在 Ubuntu 22.04 上配置 NVIDIA Docker 以运行使用 GPU 的容器可以显著提升深度学习、AI 等计算密集型任务的效率。本文将介绍如何卸载现有的 NVIDIA Docker 版本并重新安装。
首先,我们需要删除系统中可能已安装的 NVIDIA Docker 版本。
如果系统中有正在运行的 Docker 容器,请先将它们停止并删除:
bashdocker stop $(docker ps -aq)
docker rm $(docker ps -aq)
使用以下命令卸载现有的 NVIDIA Docker 版本:
bashsudo apt-get purge -y nvidia-docker sudo apt-get autoremove -y
注意:purge会删除docker的镜像。
使用 apt remove 而不是 purge 来卸载 Docker,保留配置文件:
bashsudo apt-get remove -y docker-ce docker-ce-cli containerd.io
这样仅卸载 Docker 软件,而不会删除镜像、容器等数据。
如果尚未安装 Docker,首先需要安装它。在 Ubuntu 上安装 Docker 可以通过以下步骤完成。
更新包索引
bashsudo apt-get update
安装软件包以允许 apt 通过 HTTPS 使用存储库。安装必要的依赖
bashsudo apt-get install -y \ ca-certificates \ curl \ gnupg \ lsb-release
为 Docker apt 密钥环创建一个目录:
bashsudo install -m 0755 -d /etc/apt/keyrings
添加 Docker 的官方 GPG 密钥
bashsudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
将 Docker 存储库添加到 Apt 源:
bashecho \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
安装 Docker 引擎
bashsudo apt-get update sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
启动 Docker 并设置为开机启动
bashsudo systemctl start docker
sudo systemctl enable docker
验证 Docker 安装
bashsudo docker run hello-world
如果看到“Hello from Docker!”的提示信息,则说明 Docker 安装成功。
首先需要为 NVIDIA Docker 设置包仓库。
bashdistribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
&& curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - \
&& curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
更新软件包索引并安装 NVIDIA Docker。
bashsudo apt-get update sudo apt-get install -y nvidia-docker2
bashsudo systemctl restart docker
运行以下命令,验证 NVIDIA Docker 是否能够正常识别 GPU:
bashsudo docker run --rm --gpus all nvidia/cuda:11.0-base nvidia-smi
如果一切正常,你应该会看到类似以下的输出,显示 GPU 设备信息:
+-----------------------------------------------------------------------------+ | NVIDIA-SMI 460.32.03 Driver Version: 460.32.03 CUDA Version: 11.2 | |-------------------------------+----------------------+----------------------+
bashsudo usermod -aG docker $USER
然后退出并重新登录以使更改生效。
nvidia-smi
命令检查驱动安装情况。通过本文,你应该能够顺利地在 Ubuntu 22.04 上卸载旧版 NVIDIA Docker 并重新安装最新版本。重新安装过程中,请确保系统的 Docker 和 NVIDIA 驱动都正确配置,以保证 GPU 容器能够正常运行。
本文作者:Dong
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC。本作品采用《知识共享署名-非商业性使用 4.0 国际许可协议》进行许可。您可以在非商业用途下自由转载和修改,但必须注明出处并提供原作者链接。 许可协议。转载请注明出处!