簡體   English   中英

為什么我的 NVIDIA docker 不工作? 來自守護進程的錯誤響應?

[英]why is my NVIDIA docker not working? Error response from daemon?

我正在嘗試安裝 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.list | \
  sudo tee /etc/apt/sources.list.d/nvidia-docker.list

sudo apt-get update

進而:

$ sudo apt-get install nvidia-docker

現在嘗試通過鍵入以下內容來檢查它是否安裝正確:

nvidia-docker run --rm nvidia/cuda nvidia-smi

出現此錯誤:

英偉達碼頭工人 | 2018/11/06 13:09:24 錯誤:嘗試連接到 unix:///var/run/docker.sock 上的 Docker 守護進程套接字時權限被拒絕:獲取http://%2Fvar%2Frun%2Fdocker。 sock/v1.38/version : 撥打 unix /var/run/docker.sock: 連接: 權限被拒絕

后來我嘗試:

sudo nvidia-docker run --rm nvidia/cuda nvidia-smi

出現此錯誤:

使用默認標簽:最新最新:拉完整c46b5fa4d940:拉完整93ae3df89c92:拉完整6b1eed27cade:拉完整d31e9163d0a5:拉完整8668af631f88:拉完整0d99f8ab6ae2:拉完整74440c29d798:拉完整摘要:SHA256:從NVIDIA / CUDA 473ede7ed136拉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 上找到此問題: https : //github.com/NVIDIA/nvidia-docker/issues/388

首先為包設置 GPG 和遠程倉庫

$ 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

然后更新apt列表

$ sudo apt-get update

現在您安裝 nvidia-docker (2) 並重新加載 Docker 守護進程配置

$ sudo apt-get install -y nvidia-docker2

$ sudo pkill -SIGHUP dockerd

Nvidia GPU 首先需要安裝驅動程序。 這是確保安裝它們的方法

$ sudo apt-get remove nvidia -384 ; sudo apt-get install nvidia-384

現在,剩下要做的就是測試您的環境並確保一切安裝正確。 只需啟動 nvidia-smi(系統管理界面)應用程序即可。

$ docker run --runtime=nvidia --rm nvidia/cuda:9.0-base nvidia-smi

輸出將類似於:

+------------------------------------------------- -----------------------------+

| NVIDIA-SMI 390.77 驅動程序版本:390.77 | |-----------------------------------------+----------------- -----+----------------------+

| GPU名稱持久性-M| Bus-Id Disp.A | 揮發性未校正。 ECC | | 風扇溫度性能 Pwr:Usage/Cap| 內存使用 | GPU-Util 計算 M。

|==================================================== ======+========================|

| 0 特斯拉 K80 關閉 | 00000000:00:1E.0 關閉 | 0 | | 不適用 39C P0 83W / 149W | 0MiB / 11441MiB | 98%

默認 | +-------------------------------+----------------- -----+----------------------+

參考: https : //cnvrg.io/how-to-setup-docker-and-nvidia-docker-2-0-on-ubuntu-18-04/

添加此注釋僅供參考。

不推薦使用最新標簽,並且預期會出現此錯誤:

查看已棄用: https ://hub.docker.com/r/nvidia/cuda 上的“最新”標簽

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM