Я видел несколько вопросов и ответов по этой теме и пробовал оба подхода. Любые советы о том, как действовать по любому маршруту, приветствуются:
Запуск nvidia-docker из WSL2
Я подписался на документы NVIDIA и это руководство. Все устанавливается, и команда docker
запускается из Ubuntu 20.04. Однако sudo service docker start
возвращает: docker: unrecognized service
Обновление: это оказывается известной проблемой. Мне удалось установить и запустить докер в Ubuntu, следуя этим инструкциям. Однако в следующий раз я столкнусь с подобной проблемой
$docker run --gpus all nvcr.io/nvidia/k8s/cuda-sample:nbody nbody -gpu -benchmark
Status: Downloaded newer image for nvcr.io/nvidia/k8s/cuda-sample:nbody
docker: Error response from daemon: OCI runtime create failed: container_linux.go:370: starting container process caused: process_linux.go:459: container init caused: Running hook #0:: error running hook: exit status 1, stdout: , stderr: nvidia-container-cli: initialization error: nvml error: driver not loaded: unknown.
ERRO[0065] error waiting for container: context canceled
- есть аналогичная проблема для WSL1 здесь, где можно посоветовать установить WSL2. Я сталкиваюсь с тем же самым под WSL2.
Запуск докера NVIDIA из Windows:
Другая школа мысли предлагает удалить докер из WSL Ubuntu. и вместо этого запускает докер Windows. Затем к нему можно подключиться из WSL. Ну, я вообще не могу запустить nvidia-docker
из Windows:
$ docker run --gpus all nvcr.io/nvidia/k8s/cuda-sample:nbody nbody -gpu -benchmark
Unable to find image 'nvcr.io/nvidia/k8s/cuda-sample:nbody' locally
nbody: Pulling from nvidia/k8s/cuda-sample
...
docker: Error response from daemon: could not select device driver "" with capabilities: [[gpu]].
- есть советы, как это исправить здесь, но это все о докере, работающем из Linux. Что не работает (см. Выше).
Кроме того, после удаления докера из ubuntu я все еще могу запускать докер из Ubuntu20.04 или когда я запускаю wsl
из Powershell:
$ which docker
/mnt/c/ProgramData/DockerDesktop/version-bin/docker
$ docker
The command 'docker' could not be found in this WSL 2 distro.
We recommend to activate the WSL integration in Docker Desktop settings.
See https://docs.docker.com/docker-for-windows/wsl/ for details.
Я определенно включил движок на основе WSL2 и включил интеграцию для Ubuntu 20.04 на двух разных вкладках в настройках Docker.
Система
Windows 10
WSL 2
Ubuntu 20.04 within WSL2
Windows Docker with WSL2-based engine and integration enabled
Любая помощь в дальнейшей диагностике приветствуется.