docker: Error response from daemon: Unknown runtime specified nvidia. 解决方法

当在项目中shell脚本安装docker2遇到执行docker报的错误,后来发现nvidia-docker 没有注册

Systemd drop-in file

sudo mkdir -p /etc/systemd/system/docker.service.d
sudo tee /etc/systemd/system/docker.service.d/override.conf <<EOF
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd --host=fd:// --add-runtime=nvidia=/usr/bin/nvidia-container-runtime
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

Daemon configuration file

sudo tee /etc/docker/daemon.json <<EOF
{
    "runtimes": {
        "nvidia": {
            "path": "/usr/bin/nvidia-container-runtime",
            "runtimeArgs": []
        }
    }
}
EOF
sudo pkill -SIGHUP dockerd

再往下进行就不会报错了

如果是写的脚本可以将这些加入脚本即可。

原文地址:https://www.cnblogs.com/wzhqzm/p/14361663.html