docker2
1. docker仓库拉取不了,可以参考:https://www.cnblogs.com/wzzkaifa/p/19041828
一键配置 Docker Daemon
将所有可用镜像源一次性写入 /etc/docker/daemon.json,Docker 会按顺序依次尝试:
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<
'EOF'
{
"registry-mirrors": [
"https://docker.1panel.live",
"https://docker.1ms.run",
"https://dytt.online",
"https://docker-0.unsee.tech",
"https://lispy.org",
"https://docker.xiaogenban1993.com",
"https://666860.xyz",
"https://hub.rat.dev",
"https://docker.m.daocloud.io",
"https://demo.52013120.xyz",
"https://proxy.vvvv.ee",
"https://registry.cyou",
"https://mirror.ccs.tencentyun.com",
"https://<your_code>.mirror.aliyuncs.com"
]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
2. 然后拉取仓库:docker pull hccz95/mattersim:duet
3. 如果想在别的系统安装该仓库,则先把该仓库保存为.tar文件:
docker save -o mattersim_duet.tar hccz95/mattersim:duet
4. 在需要安装仓库的系统安装该仓库:
sudo docker load -i mattersim_duet.tar
5. 在 Docker 中使用 GPU 的方法
https://blog.csdn.net/weixin_43920940/article/details/155749514
参考上面的网站即可。
安装 NVIDIA Container Toolkit
确保宿主机已安装 NVIDIA 显卡驱动和 CUDA 工具包。 NVIDIA Container Toolkit 的仓库并安装:
(1) 从GitHub地址上下载 deb文件,然后离线装一下软件
NVIDIA Container Toolkit deb文件所在路径:https://github.com/NVIDIA/libnvidia-container/tree/gh-pages/stable/deb/amd64/
需要下载的几个文件名称:
libnvidia-container1_1.18.0-1_amd64.deb
libnvidia-container-tools_1.18.0-1_amd64.deb
nvidia-container-toolkit-base_1.18.0-1_amd64.deb
nvidia-container-toolkit_1.18.0-1_amd64.deb
(2) 文件按顺序装,前面的文件是依赖,最后是正常装上了。
sudo dpkg -i libnvidia-container1_1.18.0-1_amd64.deb
sudo dpkg -i libnvidia-container-tools_1.18.0-1_amd64.deb
sudo dpkg -i nvidia-container-toolkit-base_1.18.0-1_amd64.deb
sudo dpkg -i nvidia-container-toolkit_1.18.0-1_amd64.deb
(3) 修复可能缺失的系统依赖(可选)
某些基础依赖(如 libseccomp2)可能未安装,用以下命令自动修复:
sudo apt --fix-broken install -y
(4) 查看NVIDIA Container Toolkit的版本以验证是否安装成功
nvidia-ctk --version
(5) 设置Docker默认使用NVIDIA runtime
sudo nvidia-ctk runtime configure --runtime=docker
复现结果:
(base) wh@wh-Vostro-3671:~$ nvidia-ctk --version
NVIDIA Container Toolkit CLI version 1.18.0
commit: f8daa5e26de9fd7eb79259040b6dd5a52060048c
(base) wh@wh-Vostro-3671:~$ sudo nvidia-ctk runtime configure --runtime=docker
[sudo] wh 的密码:
INFO[0000] Config file does not exist; using empty config
INFO[0000] Wrote updated config to /etc/docker/daemon.json
INFO[0000] It is recommended that docker daemon be restarted.
(6) 重载Docker守护进程配置 + 重启Docker(必须两步都做,让配置生效)
sudo systemctl daemon-reload sudo systemctl restart docker
(7) 验证配置是否成功(可选,但建议执行,心里有底)
docker info | grep -i nvidia
(8)配置完成后,你原来的 docker run 命令完全不用改,直接执行即可成功启动容器,GPU 调用正常:
docker run -it \ -v /dev/shm:/dev/shm \ -v ./DUET_datasets:/root/mount/VLN-DUET/datasets \ --gpus all \ hccz95/mattersim:duet bash
复现结果:
(base) wh@wh-Vostro-3671:~$ sudo systemctl daemon-reload
sudo systemctl restart docker
(base) wh@wh-Vostro-3671:~$ docker info | grep -i nvidia
cdi: nvidia.com/gpu=0
cdi: nvidia.com/gpu=GPU-0c364690-a2a1-58b5-a422-febb92a486f7
cdi: nvidia.com/gpu=all
Runtimes: io.containerd.runc.v2 nvidia runc
(base) wh@wh-Vostro-3671:~$ docker run -it \
-v /dev/shm:/dev/shm \
-v ./DUET_datasets:/root/mount/VLN-DUET/datasets \
--gpus all \
hccz95/mattersim:duet bash
(base) root@e3c1d27cf0d2:~/mount/VLN-DUET#
更多推荐

所有评论(0)