docker大模型环境详细配置流程

介绍

本篇文章主要介绍在docker下,配置大模型环境并部署服务。

基于开源项目(开源docker镜像)

以Yuan2-M32为例

1. 拉取镜像并创建容器

# 拉取开源镜像
docker pull yuanmodel/vllm-v0.4.0:latest
# 创建容器
docker run --gpus all -itd --network=host  -v /mnt:/mnt --cap-add=IPC_LOCK --device=/devinfiniband --privileged --name vllm_yuan --ulimit core=0 --ulimit memlock=1 --ulimit stack=68719476736 --shm-size=1000G yuanmodel/vllm-v0.4.0:latest
# 进入容器
docker exec -it vllm_yuan bash

参数解释:

--gpus all、"device=0""device=2,3"
#docker新版本提供了NVIDIA Container Toolkit支持,在启动容器时,可以指定容器中可用的gpu资源,all代表所有gpu,也可配置单个或多个

-itd 
# -d(后台方式运行) -it(指定交互方式运行,进入容器查看内容) 合并版

--network host、none、bridge(默认)、container(container:NAME_or_ID) 
# 用来指定容器的网络模式,host模式的容器和宿主机共用一个网络命名空间(Network Namespace),使用宿主机的ip和端口
# bridge模式,为容器创建独立的网络命名空间,容器会虚拟出自己独立的网卡,默认模式
# none模式,为容器创建独立网络命名空间,但不为它做任何网络配置,需用户在此基础上定制,自己添加网卡、配置ip
# container模式,只是容器将与指定的容器共享网络命名空间。这个模式就是指定一个已有的容器,共享该容器的IP和端口

-v 主机目录:容器内目录
# 挂载资源目录、配置文件等,将容器内目录挂载到主机上
# 可实现容器间数据共享,容器的持久化与同步操作。容器删除后,挂载到本地的数据卷依然不会丢失

--cap-add
# 出于容器之间和容器与宿主机的安全隔离保护,在默认的Docker配置下,Docker容器是没有系统权限的。
#可通过--cap-add添加系统权限,如IPC_LOCK(锁定内存),可添加的linux功能选项可参考:https://developer.aliyun.com/article/722230

 --device
 # (我自己理解的,如果有误,欢迎指正)与cap-add等配合使用,指定需要添加系统权限的目录

--privileged
# 给容器添加了所有的capabilities
# 允许容器访问主机的所有设备
# 具体参考: https://blog.csdn.net/Dontla/article/details/132996095

--ulimit 
# 为容器中的进程设置资源限制
# core=0 core文件大小,核心转储被禁用
# 赞未找到清晰的资料,后续补充,欢迎评论区指正

2. 安装大模型运行环境

#进入工作目录
cd /mnt
# 拉取开源项目
git clone https://github.com/IEIT-Yuan/Yuan2.0-M32.git
# 进入vLLM项目
cd Yuan2.0-M32/vllm
# 安装依赖
CUDA_HOME=/usr/local/cuda MAX_JOBS=64 NVCC_THREADS=8 python setup.py install
# 拷贝.so文件
cp build/lib.linux-x86_64-3.10/vllm/*.so vllm/

3. 推理部署

进入容器后,推理部署流程与容器外类似

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值