failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error running prestart hook #0: exit status 1, stdout: , stderr: Auto-detected mode as 'legacy' nvidia-container-cli: initialization error: nvml error: driver not loaded: unknown
时间: 2025-06-03 07:20:18 浏览: 79
### 容器初始化错误和NVIDIA驱动未加载的解决方案
在处理 `OCI runtime create failed` 和 `nvidia-container-cli initialization error: driver not loaded` 问题时,可以从以下几个方面入手:
#### 1. 检查 NVIDIA 驱动是否正确安装
确保系统中已正确安装 NVIDIA 驱动,并且驱动程序能够正常工作。可以通过以下命令检查 NVIDIA 驱动是否启动:
```bash
lsmod | grep nvidia
```
如果输出为空,则说明 NVIDIA 驱动未加载。此时需要进入 BIOS 设置,确保启用了 NVIDIA 显卡相关选项,并重新安装 NVIDIA 驱动[^1]。
#### 2. 确保 Docker 支持 GPU 加速
在 Ubuntu 系统中,Docker 需要配置为支持 NVIDIA GPU 加速。检查 `/etc/docker/daemon.json` 文件内容是否如下所示:
```json
{
"runtimes": {
"nvidia": {
"path": "nvidia-container-runtime",
"runtimeArgs": []
}
}
}
```
如果没有该文件或配置不正确,请手动创建并添加上述内容。之后重启 Docker 服务以使更改生效:
```bash
sudo systemctl restart docker
```
#### 3. 验证 NVIDIA 容器工具链安装
确保系统中已安装 `nvidia-docker2` 和相关依赖项。可以使用以下命令验证:
```bash
dpkg -l | grep nvidia-container-toolkit
```
如果未安装,可以通过以下步骤安装:
```bash
distribution=$(. /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
sudo apt-get update && sudo apt-get install -y nvidia-container-toolkit
sudo systemctl restart docker
```
#### 4. 测试 NVIDIA 驱动与容器集成
运行以下命令测试 NVIDIA 驱动是否能被容器正确识别:
```bash
docker run --rm --gpus all nvidia/cuda:11.0-base nvidia-smi
```
如果出现类似以下错误信息:
```
docker: Error response from daemon: Unknown runtime specified nvidia.
```
则需要检查 Docker 的运行时配置是否正确[^3]。
#### 5. 检查 SELinux 或其他安全模块的影响
如果系统启用了 SELinux,可能会导致容器初始化失败。可以通过以下命令临时禁用 SELinux 进行测试:
```bash
setenforce 0
```
如果问题解决,则需要调整 SELinux 策略以允许容器访问 GPU 设备[^4]。
#### 6. 更新系统内核和 Docker 版本
确保系统内核版本和 Docker 版本满足 NVIDIA 容器工具链的要求。建议使用以下版本或更高版本:
- Linux 内核:5.4+
- Docker:19.03+
可以通过以下命令更新系统和 Docker:
```bash
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install docker-ce docker-ce-cli containerd.io
```
---
### 总结
通过以上步骤,可以逐步排查并解决 `OCI runtime create failed` 和 `nvidia-container-cli initialization error: driver not loaded` 的问题。关键在于确保 NVIDIA 驱动正确安装、Docker 配置支持 GPU 加速以及系统环境兼容性良好。
---
阅读全文
相关推荐












