前提
ubuntu 20.04.05にて機械学習の環境構築をしたいのですが、
docker-desktop及びdocker-composeにてGPUが動作せず困っています。
dockerのイメージもsudoをつけたときとsudoなしでそれぞれイメージを保存しているみたいで、sudoなしだとGPUを認識しません。
docker-desktop及びdocker-composeはsudoなしのユーザーで動いてるみたいです。
$docker compose up でsudo をつけてみましたが動きませんでした。
実現したいこと
そももそのdockerの設定を教えて頂きたいです。
現在ターミナルで、
$sudo docker run --rm --runtime=nvidia nvidia/cuda:11.3.0-base-ubuntu20.04 nvidia-smi
ではGPUの確認がとれますが、sudoなしの
$docker run ~だとエラーがでます。
docker run でGPUを認識させるにはどこをみればいいのでしょうか?
発生している問題・エラーメッセージ
<実行①>
$docker run --rm --runtime=nvidia nvidia/cuda:11.3.0-base-ubuntu20.04 nvidia-smi
docker: Error response from daemon: Unknown runtime specified nvidia.
See 'docker run --help'.
<実行②>
$docker run --rm --runtime=nvidia -e NVIDIA_VISIBLE_DEVICES=0 nvidia/cuda:11.3.0-base-ubuntu20.04 nvidia-smi
docker: Error response from daemon: Unknown runtime specified nvidia.
See 'docker run --help'.
<実行③>
$docker run --rm --gpus all nvidia/cuda:11.3.0-base-ubuntu20.04 nvidia-smi
Status: Downloaded newer image for nvidia/cuda:11.3.0-base-ubuntu20.04
docker: Error response from daemon: 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: load library failed: libnvidia-ml.so.1: cannot open shared object file: no such file or directory: unknown.
該当のソースコード
ランタイムは以下の通りです。
etc/docker/daemon.json
{
"runtimes": {
"nvidia": {
"path": "/usr/bin/nvidia-container-runtime",
"runtimeArgs": []
}
}
}
試したこと
何度かインストールもやり直しましたがよくわかりませんでした。
補足情報(バージョンなど)
Ubuntu 20.04.5 LTS
uid=1000(hisa) gid=1000(hisa) groups=1000(hisa),27(sudo),998(docker)※抜粋
$docker version
Client: Docker Engine - Community
Cloud integration: v1.0.29
Version: 20.10.22
API version: 1.41
Go version: go1.18.9
OS/Arch: linux/amd64
Context: desktop-linux
Experimental: true
Server: Docker Desktop 4.12.0 (85629)
Engine:
Version: 20.10.17
API version: 1.41 (minimum version 1.12)
Go version: go1.17.11
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.6.8
runc:
Version: 1.1.4
docker-init:
Version: 0.19.0
$docker-compose -v
docker-compose version 1.25.0, build unknown
$nvidia-smi
NVIDIA-SMI 525.60.13 Driver Version: 525.60.13 CUDA Version: 12.0
$nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Sun_Jul_28_19:07:16_PDT_2019
Cuda compilation tools, release 10.1, V10.1.243
$which nvidia-container-runtime
/usr/bin/nvidia-container-runtime

あなたの回答
tips
プレビュー