#docker #api
#docker #API
Вопрос:
Я не могу использовать приведенную ниже команду для использования графических процессоров nvidia внутри контейнера :
docker run --gpus all nvidia/cuda:10.0-base nvidia-smi
для «—gpus» требуется версия API 1.40, но версия API Docker daemon 1.39
Для этого требуется API версии 1.4 :
Client: Docker Engine - Community
Version: 19.03.12
API version: 1.39
Go version: go1.13.10
Git commit: 48a66213fe
Built: Mon Jun 22 15:45:36 2020
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 18.09.9
API version: 1.39 (minimum version 1.12)
Go version: go1.11.13
Git commit: 039a7df
Built: Wed Sep 4 16:19:38 2019
OS/Arch: linux/amd64
Experimental: false ```
Я не могу найти способ обновить daemon api.
Пожалуйста, помогите.
Комментарии:
1. Вам необходимо обновить системный демон Docker. Обычно я бы ожидал, что две версии, возвращаемые
docker version
, будут одинаковыми; какие у вас настройки, чтобы они отличались? (Используете ли вы Docker Toolbox или$DOCKER_HOST
переменную окружения установили вручную?)2. @david maze: Я следовал основным инструкциям по установке docker. Да, я установил это вручную. Должен ли я удалить все и переустановить?
3. Вам вообще не нужно будет устанавливать
$DOCKER_HOST
. На что вы его настроили? Зачем вы это установили? Какая у вашего хоста операционная система?
Ответ №1:
У меня возникла точная проблема. Для меня обновление docker-ce
сработало.
$ apt search docker-ce
Sorting... Done
Full Text Search... Done
docker-ce/xenial 5:19.03.12~3-0~ubuntu-xenial amd64 [upgradable from: 5:18.09.6~3-0~ubuntu-xenial] Docker: the open-source application container engine
docker-ce-cli/xenial,now 5:19.03.12~3-0~ubuntu-xenial amd64 [installed,automatic] Docker CLI: the open-source application container engine
$ apt install docker-ce
$ docker run --rm --gpus all nvidia/cuda:11.0-base nvidia-smi
Как вы можете видеть, у меня был установлен клиент docker docker-ce-cli
(версия 19.03), но установленный сервер docker был v18.09
.
Ответ №2:
Если нет возможности обновить docker
(если у вас нет root-прав на этом самом компьютере). И предполагая, что nvidia-docker
установлен, попробуйте следующую подпись:
nvidia-docker run --rm
...
-e NVIDIA_VISIBLE_DEVICES=0,1
...
Таким образом, вы вызовете nvidia-docker
runtime и ограничите видимые графические процессоры значением 0,1 (вы выбираете, какие из них должны быть видимыми).