container-toolkit
NVIDIA Container Toolkit 介绍及安装-CSDN博客
NVIDIA Container Toolkit 是 NVIDIA 提供的一组工具,用于在容器化环境中支持 GPU 加速,特别是通过 Docker 或其他容器运行时,运行基于 NVIDIA GPU 的工作负载(如深度学习、科学计算等)
安装 NVIDIA Container Toolkit
1. 前提条件
NVIDIA 驱动程序:确保主机已安装支持的 NVIDIA 驱动程序。
https://developer.nvidia.com/cuda-downloads?target_os=Linux&target_arch=x86_64&Distribution=Ubuntu&target_version=24.04&target_type=deb_local
根据自己的系统选择:
按照 网站提示的安装就可以。
Docker:安装 Docker,版本需为 19.03
或更高。
2. 设置 NVIDIA 容器仓库
根据操作系统配置仓库:
sudo curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://nvidia.github.io/libnvidia-container/stable/deb/amd64 /" | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update
3. 安装 NVIDIA Container Toolkit
Ubuntu:
apt-get install -y nvidia-container-toolkit
nvidia-container-toolkit nvidia-container-runtime
验证:
nvidia-container-cli --version
4. 配置 Docker
在 /etc/docker/daemon.json 文件中添加以下内容:
"runtimes": {
"nvidia": {
"path": "nvidia-container-runtime",
"runtimeArgs": []
}
}
然后重启 Docker 服务:
systemctl restart docker
5-驱动
sudo apt install nvidia-driver-550
测试 NVIDIA GPU 支持
运行以下命令检查容器中 GPU 的可用性
docker run --rm --gpus all nvcr.io/nvidia/cuda:12.4.0-base-ubuntu22.04 nvidia-smi
报错:
docker: Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error running hook #0: error running hook: exit status 1, stdout: , stderr: Auto-detected mode as 'legacy'
nvidia-container-cli: initialization error: nvml error: driver not loaded: unknown.
分割线
NVIDIA Container Toolkit-核心功能
- GPU 加速支持:
- 将主机的 NVIDIA GPU 映射到容器中,使得容器能够直接访问 GPU 资源。
- 轻松管理 CUDA 环境:
- 自动加载必要的 NVIDIA 驱动程序、CUDA 库和运行时,简化环境配置。
- 与容器平台集成:
- 支持 Docker 和其他容器运行时(如 containerd)。
- 灵活的 GPU 分配:
- 允许用户指定容器可以访问的 GPU 数量或特定 GPU。
NVIDIA Container Toolkit-组件结构
NVIDIA Container Runtime:
Docker 运行时的扩展,用于在容器中加载 GPU 相关组件。
NVIDIA Container CLI:
提供了命令行工具 nvidia-container-cli
,可以用于调试和管理 GPU 映射。
支持的库和工具:
自动为容器挂载 libcuda.so
和其他相关库,使其支持 GPU 加速。
欢迎来撩 : 汇总all