mirror of
https://github.com/XShengTech/MEGREZ-Deploy.git
synced 2026-01-13 17:27:16 +08:00
| .. | ||
| docker-compose.yml | ||
| README.md | ||
被控端
Note
即被控制的机器
1. 安装依赖
1.1. 安装依赖
sudo apt update && sudo apt install git lxcfs
1.2. 安装 docker
sudo curl -sSL get.docker.com | sh
# 国内用户可以使用以下命令
sudo curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
1.3 安装 NVIDIA 驱动
1.4 安装 NVIDIA Container Toolkit
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
&& curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update && sudo apt-get install -y nvidia-container-toolkit
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker
2. 配置环境
2.1 配置 XFS 分区
sudo mkfs.xfs /dev/sdb # 例如 /dev/sdb
修改 /etc/fstab 添加 XFS 分区
Important
一定要添加
prjquota参数
/dev/sdb /path/to/docker/data xfs defaults,prjquota 0 0
挂载 XFS 分区
sudo mount -a
2.2 配置 Docker 存储路径至 XFS 文件系统分区
修改 /etc/docker/daemon.json 添加 data-root 字段
{
"data-root": "/path/to/docker/data" // 例如 "/data/docker"
}
2.3 配置 Docker 镜像加速
修改 /etc/docker/daemon.json 添加 registry-mirrors 字段
{
"registry-mirrors": ["https://docker.1panelproxy.com"]
}
2.4 重启 Docker
sudo systemctl restart docker
查看 Docker 状态
docker info | grep 'Docker Root Dir'
返回 Docker Root Dir: /path/to/docker/data
docker info
返回 Registry Mirrors: https://docker.1panelproxy.com 即可
2.5 配置 CDI 设备
Note
每次升级 NVIDIA 驱动后都需要重新配置 CDI 设备
或每次添加新的 GPU 后都需要重新配置 CDI 设备
启用 Docker 的 CDI 特性
sudo nvidia-ctk runtime configure --runtime=docker --cdi.enabled
systemctl restart docker
生成 CDI 设备配置
sudo nvidia-ctk cdi generate --output=/etc/cdi/nvidia.yaml
查看 CDI 设备配置
nvidia-ctk cdi list
有如下返回即可
INFO[0000] Found 17 CDI devices
nvidia.com/gpu=0
nvidia.com/gpu=1
nvidia.com/gpu=2
nvidia.com/gpu=3
nvidia.com/gpu=4
nvidia.com/gpu=5
nvidia.com/gpu=6
nvidia.com/gpu=7
nvidia.com/gpu=GPU-23bb08b6-****-****-****-************
nvidia.com/gpu=GPU-5f996fb2-****-****-****-************
nvidia.com/gpu=GPU-a55f05cc-****-****-****-************
nvidia.com/gpu=GPU-b3d3f52f-****-****-****-************
nvidia.com/gpu=GPU-c8d9b1fb-****-****-****-************
nvidia.com/gpu=GPU-c94df367-****-****-****-************
nvidia.com/gpu=GPU-cddc6468-****-****-****-************
nvidia.com/gpu=GPU-ea606b9e-****-****-****-************
nvidia.com/gpu=all
2.6 启动 LXCFS
sudo systemctl start lxcfs
3. 下载部署配置
git clone https://github.com/XShengTech/MEGREZ-Deploy.git
# 国内用户可以使用以下命令
git clone https://openi.pcl.ac.cn/XShengTech/MEGREZ-Deploy.git
cd MEGREZ-Deploy/controler
修改 docker-compose.yml 文件中的 gpu-docker-api 的 environment 字段的 APIKEY 为任意字符串
environment:
- APIKEY=CHANGETHIS # 修改为任意字符串
修改 docker-compose.yml 文件中的 gpu-docker-api 的 volumes 字段的 PATH_TO_DOCKER_STORAGE 为 Docker 存储路径
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /path/to/docker/data:/path/to/docker/data
4. 启动被控端
docker compose up -d
5. 拉取镜像
docker pull ubuntu:22.04 # 这个必须拉取,否则数据盘扩容/缩容功能无法使用
# 下面的是打包好的镜像,可以直接使用
docker pull xshengtech/megrez:pytorch-1.8.1_cuda-11.1_python-3.8_ubuntu-20.04
docker pull xshengtech/megrez:pytorch-1.10.2_cuda-11.1_python-3.9_ubuntu-20.04
docker pull xshengtech/megrez:pytorch-1.13.1_cuda-11.7_python-3.10_ubuntu-22.04
docker pull xshengtech/megrez:pytorch-2.0.1_cuda-11.8_python-3.10_ubuntu-22.04
docker pull xshengtech/megrez:pytorch-2.1.2_cuda-12.1_python-3.10_ubuntu-22.04
docker pull xshengtech/megrez:pytorch-2.3.1_cuda-12.1_python-3.11_ubuntu-22.04
docker pull xshengtech/megrez:pytorch-2.4.0_cuda-12.1_python-3.12_ubuntu-22.04
docker pull xshengtech/megrez:ubuntu-22.04