Использование Docker CMD из Docker API - PullRequest
0 голосов
/ 13 февраля 2019

Найдена ссылка , которая позволяет мне получить доступ к статистике Docker / запустить Docker удаленно, используя CURL.

Я пытаюсь запустить следующую команду:
docker run --runtime=nvidia --rm nvidia/cuda:9.0-base nvidia-smi
, который дает следующий вывод:

+-----------------------------------------------------------------------------+  
| NVIDIA-SMI 384.130                Driver Version: 384.130                   |  
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 108...  Off  | 00000000:01:00.0 Off |                  N/A |
| 26%   54C    P8    23W / 250W |      0MiB / 11172MiB |      1%      Default |
+-------------------------------+----------------------+----------------------+
|   1  GeForce GTX 970     Off  | 00000000:03:00.0 Off |                  N/A |
|  1%   48C    P8    12W / 163W |      1MiB /  4037MiB |      1%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

но не повезло, так как я не могу запустить команду nvidia-smi из API. Попытался создать следующую команду для создания контейнера:

curl -X POST http://<IP>:<PORT>/containers/create -H "Content-Type: application/json" -d '{"Image":"nvidia/cuda:9.0-base", "Id": "8dfafdbc3a10", "Cmd":["nvidia-smi"]}' . 

Запустить контейнеркоманда:

curl -X POST http://<IP>:<PORT>/containers/<CONTAINER_ID>/start  -d '{"runtime":"nvidia"}'       

Получена следующая ошибка:
{"message":"starting container with non-empty request body was deprecated since API v1.22 and removed in v1.24"}.

Было бы замечательно, если бы кто-нибудь помог мне определить CMD в Docker API

...