Linux 为什么我的NVIDIA docker不工作?来自守护进程的错误响应?
我正在尝试安装NVIDIA docker。 我用了以下几句话:Linux 为什么我的NVIDIA docker不工作?来自守护进程的错误响应?,linux,docker,ubuntu,tensorflow,nvidia-docker,Linux,Docker,Ubuntu,Tensorflow,Nvidia Docker,我正在尝试安装NVIDIA docker。 我用了以下几句话: curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | \ sudo apt-key add - distribution=$(. /etc/os-release;echo $ID$VERSION_ID) curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.lis
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | \
sudo apt-key add -
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
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安装nvidia docker
现在尝试通过键入以下内容来检查它是否正确安装:
nvidia docker运行——rm nvidia/cuda nvidia smi
出现以下错误:
nvidia docker | 2018/11/06 13:09:24错误:获取权限时被拒绝
正在尝试连接到位于的Docker守护程序套接字
unix:///var/run/docker.sock: 得到
:拨号unix
/var/run/docker.sock:connect:权限被拒绝
后来我尝试:
sudo nvidia docker run——rm nvidia/cuda nvidia smi
出现以下错误:
使用默认标记:最新:从nvidia/cuda拉取
473ede7ed136:拉动完成c46b5fa4d940:拉动完成
93ae3df89c92:拉动完成6b1eed27cade:拉动完成
d31e9163d0a5:拉动完成8668af631f88:拉动完成
0d99f8ab6ae2:提取完整74440c29d798:提取完整摘要:
sha256:a6b5fd418d1cd0bc6d8a60c1c4ba33670508487039b828904f8494ec29e6b450
状态:已下载nvidia/cuda的较新图像:最新docker:错误
来自守护程序的响应:OCI运行时创建失败:
container_linux.go:348:启动容器进程导致“exec:
\“nvidia smi\”:在$PATH中找不到可执行文件:未知
我用Ubuntu安装Linux。
有人能帮帮我吗?你有两个错误,这两个错误都是自相矛盾的 首先,您的登录用户似乎不允许连接到docker守护进程。 这是一个相当标准的问题,您只需要将您的用户登录添加到docker组,它应该可以解决这个问题。您需要注销/再次登录才能激活此更改 其次,这也是一个标准的linux问题,您的shell有一个名为PATH的环境变量,其中包含它将在其中查找命令二进制文件的所有文件夹,而该命令不包含二进制文件的完整路径 例如,当您键入curl下载docker nvidia时,shell会在
/usr/bin/
文件夹中找到它,因为该文件夹已声明为PATH变量
这同样适用于您下载的容器和本地系统上的不同用户。您可以调查此特定错误消息并在github上找到此问题:通过设置包的GPG和远程repo开始
$curl-s-Lhttps://nvidia.github.io/nvidia-docker/gpgkey |\sudo apt key add-distribution=$(./etc/os release;echo$ID$VERSION\u ID)curl-s-Lhttps://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list |\sudo-tee/etc/apt/sources.list.d/nvidia-docker.list
然后更新apt列表
$sudo apt获得更新
现在安装nvidia docker(2)并重新加载docker守护程序配置
$sudo apt get安装-y nvidia-docker2
$sudo pkill-SIGHUP dockerd
Nvidia GPU首先需要安装驱动程序。以下是如何确保它们已安装
$sudo-apt-get-remove-nvidia-384;sudo apt get安装nvidia-384
现在,唯一要做的就是测试您的环境,并确保所有内容都已正确安装。只需启动nvidia smi(系统管理界面)应用程序
$docker run--runtime=nvidia--rm nvidia/cuda:9.0-base nvidia smi
输出与此类似:
+-----------------------------------------------------------------------------+
|NVIDIA-SMI 390.77驱动程序版本:390.77|
|-------------------------------+----------------------+----------------------+
|GPU名称持久化-M |总线Id显示A |易失性解聚。ECC|
|风扇温度性能Pwr:使用率/上限|内存使用率| GPU Util Compute M|
|===============================+======================+======================|
|0特斯拉K80关闭| 00000000:00:1E.0关闭| 0|
|不适用39C P083W/149W | 0MiB/11441MiB | 98%
违约|
+-------------------------------+----------------------+----------------------+
参考资料:要添加用户名,请执行以下操作:sudo usermod-aG docker