基于 docker 的 Xinference 全流程部署指南

Xorbits Inference (Xinference) 是一个开源平台,用于简化各种 AI 模型的运行和集成。借助 Xinference,您可以使用任何开源 LLM、嵌入模型和多模态模型在云端或本地环境中运行推理,并创建强大的 AI 应用。

一、下载代码

请在控制台下面执行下面的命令

shell 复制代码
# 克隆仓库到本地的 inference 目录,使用 --depth 1 参数仅获取最新的一次提交,减少下载量, 命令如下:
git clone --depth 1 https://github.com/xorbitsai/inference.git inference
# 注:如果您的网络环境不好,可以使用国内镜像仓库,命令如下
# git clone --depth 1 https://gitee.com/mirrors/Xinference.git inference
# 获取 release 版本 v1.4.0 的代码,命令如下:
cd inference
git fetch --tags
git checkout v1.4.0
# 查看当前版本,命令如下:
#git describe --tags
cd ..

二、安装环境

1、安装 docker 和 docker-compose

略(注:安装完成后请执行 docker -vdocker-compose -v 验证是否安装成功)

三、制作镜像

请在控制台下面执行下面的命令

shell 复制代码
cd inference
# 请确保使用 Dockerfile 制作镜像时在 Xinference 项目的根目录下。
docker build --progress=plain -t xinference:v1.4.0 -f xinference/deploy/docker/Dockerfile .
cd ..

注:制作镜像完成后,您可以在控制台下面执行 docker images 命令查看是否有 xinference:v1.4.0 镜像,如果有则说明制作成功。

四、创建容器

./docker-compose.yaml 文件(编码格式:UTF-8)里面添加如下配置参数,假设已经创建该文件且添加内容如下:

yml 复制代码
version: '3.8'

services:
  xinference:
    image: xinference:v1.4.0
    ports:
      - "9997:9997"
    volumes:
      - ./data/.xinference:/root/.xinference
      - ./data/.cache/huggingface:/root/.cache/huggingface
      - ./data/.cache/modelscope:/root/.cache/modelscope
    environment:
      - XINFERENCE_MODEL_SRC=modelscope
    command: xinference-local --host 0.0.0.0 --port 9997
    deploy:
      resources:
        reservations:
          devices:
            - capabilities: [gpu]
              driver: nvidia
              count: all

请在控制台下面执行下面的命令

shell 复制代码
docker-compose -f "./docker-compose.yaml" up -d

注:创建容器完成后,您可以在控制台下面执行 docker ps 命令查看是否有 xinference 容器,如果有则说明制作成功。

五、访问WEB服务

请在浏览器中访问 http://localhost:9997/ ,即可访问WEB服务。

六、结语

本文介绍了如何使用 Docker 部署 Xinference 大模型服务的完整流程。首先通过 Git 获取 Xinference 的代码,然后安装 Docker 环境并构建自定义镜像。接着通过 docker-compose 配置文件设置服务端口、数据卷挂载和环境变量,并启动容器。最后,用户可以通过浏览器访问部署好的 Web 服务。指南还提供了国内镜像加速、GPU 资源分配等优化建议,以及每个步骤的验证方法,帮助用户快速完成 Xinference 的容器化部署。

相关推荐
40kuai6 小时前
kubernetes中数据存储etcd
容器·kubernetes·etcd
敲上瘾6 小时前
Linux系统cgroups资源精细化控制基础
linux·测试工具·docker·压力测试·cgroups
Harvey_D8 小时前
【部署K8S集群】 1、安装前环境准备配置
云原生·容器·kubernetes
伊成8 小时前
Docker 部署 Nginx 完整指南
nginx·docker·容器
落日漫游9 小时前
K8s核心组件全解析
运维·docker·运维开发
江湖有缘13 小时前
【Docker项目实战】使用Docker部署Notepad轻量级记事本
docker·容器·notepad++
BTU_YC15 小时前
docker compose部署mysql
mysql·adb·docker
Wezzer15 小时前
k8s单master部署
云原生·容器·kubernetes
Python私教16 小时前
Docker in Test:用一次性的真实环境,终结“测试永远跑不通”魔咒
运维·docker·容器
一宿君16 小时前
Github 9 个惊艳的开源 NL2SQL 项目
sql·nlp·github