LLaMA-Factory 昇腾 Docker 部署指南
1. 镜像信息
镜像名称:LLaMA-Factory-CANN8-Python3.10-PyTorch2.2.0
镜像地址:http://mirrors.cn-central-221.ovaijisuan.com/mirrors.html
版本信息:
| 组件 | 版本 |
|---|---|
| Python | 3.10.13 |
| CANN | 8.0 |
| 操作系统 | Ubuntu 18.04 |
| 昇腾驱动固件 | 23.0.0 以上 |
2. 使用说明
2.1 镜像拉取
对应 LLaMA-Factory 0.7.1 版本:
bash
docker pull swr.cn-east-317.qdrgznjszx.com/donggang/llama-factory-ascend910b:cann8-py310-torch2.2.0-ubuntu18.042.2 镜像启动
创建 docker_run.sh 文件,将以下代码写入文件并执行:
bash
#!/bin/bash
docker_images=llama-factory-ascend910b:cann8-py310-torch2.2.0-ubuntu18.04
docker run -it -u root --ipc=host --net=host \
--device=/dev/davinci0 \
--device=/dev/davinci1 \
--device=/dev/davinci2 \
--device=/dev/davinci3 \
--device=/dev/davinci4 \
--device=/dev/davinci5 \
--device=/dev/davinci6 \
--device=/dev/davinci7 \
--device=/dev/davinci_manager \
--device=/dev/devmm_svm \
--device=/dev/hisi_hdc \
-v /usr/local/Ascend/driver:/usr/local/Ascend/driver \
-v /usr/local/Ascend/add-ons/:/usr/local/Ascend/add-ons/ \
-v /usr/local/sbin/npu-smi:/usr/local/sbin/npu-smi \
-v /home/niejzh:/home/niejzh:rw \
-v /var/log/npu:/usr/slog ${docker_images} \
/bin/bash补充说明:请根据实际 NPU 卡数调整
--device参数。上述示例挂载了 8 张 NPU 卡(davinci0~davinci7)。
2.3 FAQ:docker login 报错 x509
报错信息:
text
Error response from daemon: Get "https://swr.cn-east-317.qdrgznjszx.com/v2/": tls: failed to verify certificate: x509: certificate signed by unknown authority原因:Docker 无法验证镜像仓库的 TLS 证书。
解决方案:编辑 /etc/docker/daemon.json,添加不安全仓库配置:
json
{
"insecure-registries": [
"swr.cn-east-317.qdrgznjszx.com"
],
"registry-mirrors": [
"https://docker.mirrors.ustc.edu.cn"
]
}完整配置示例(含 NVIDIA Runtime):
json
{
"insecure-registries": [
"swr.cn-south-222.ai.pcl.cn",
"https://swr.cn-east-317.qdrgznjszx.com"
],
"registry-mirrors": [
"https://docker.mirrors.ustc.edu.cn"
],
"runtimes": {
"nvidia": {
"args": [],
"path": "nvidia-container-runtime"
}
}
}配置完成后重启 Docker 服务:
bash
systemctl restart docker2.4 跨 AICC 环境迁移镜像
在其他 AICC 环境中使用本镜像时,按以下步骤操作:
- 在本地 ARM 宿主机上拉取镜像:
docker pull <远程镜像地址> - 使用
docker tag替换为目标局点的组织信息:docker tag <本地镜像名> <目标镜像地址> - 推送至目标局点的 SWR 服务:
docker push <目标镜像地址>