Как включить Docker RestAPI в контейнерах Windows?

Ключевым моментом является файл daemon.json , который помещают в C:\ProgramData\docker\config или C:/Users/Username/.docker/config.json.

{
    "authorization-plugins": [],
    "dns": [],
    "dns-opts": [],
    "dns-search": [],
    "exec-opts": [],
    "storage-driver": "",
    "storage-opts": [],
    "labels": [],
    "log-driver": "", 
    "mtu": 0,
    "pidfile": "",
    "data-root": "",
    "cluster-store": "",
    "cluster-advertise": "",
    "debug": true,
    "hosts": [],
    "log-level": "",
    "tlsverify": true,
    "tlscacert": "",
    "tlscert": "",
    "tlskey": "",
    "group": "",
    "default-ulimits": {},
    "bridge": "",
    "fixed-cidr": "",
    "raw-logs": false,
    "registry-mirrors": [],
    "insecure-registries": [],
    "disable-legacy-registry": false
}

В руководстве, связанном с вопросом, автор только упоминает, что мы должны поместить в него что - то вроде:

{"hosts": ["tcp://0.0.0.0:2376", "npipe://"]}  

Но когда я пытаюсь добавить это в daemon.json, мой демон не работает на CLI. Наконец, я меняю порядок массива, как

{"hosts": ["npipe://", "tcp://0.0.0.0:2376"]}   

Мой docker будет хорошо работать в обоих CLI & Remote API.

Включить через консоль

  1. Проверить версию docker
  2. Проверьте URL устройства, к которому я хочу подключиться ( default > 192.168.99.100:2376 )
  3. Установите переменную среды в расположение сертификатов
  4. Выполните запрос CURL на конечной точке REST ( /v1.24/containers/json?all=1 )
C:\Users\Nick>docker --version
Docker version 18.03.0-ce, build 0520e24302
 
C:\Users\Nick>docker-machine ls
NAME      ACTIVE   DRIVER       STATE     URL                         SWARM   DOCKER        ERRORS
default   -        virtualbox   Running   tcp://192.168.99.100:2376           v18.03.0-ce
 
C:\Users\Nick>set DOCKER_CA=C:\Users\Nick\.docker\machine\machines\default
 
C:\Users\Nick>curl --cert "%DOCKER_CA%/cert.pem" --cacert "%DOCKER_CA%/ca.pem" --key "%DOCKER_CA%/key.pem" https://192.168.99.100:2376/v1.24/containers/json?all=1
[]