Docker Socket

Вывод информации

$ curl --silent -XGET --unix-socket /run/docker.sock http://localhost/version | jq .
$ curl --silent -XGET --unix-socket /run/docker.sock http://localhost/info | jq .
$ curl --silent -XGET --unix-socket /run/docker.sock http://localhost/events | jq .

Список контейнеров

$ curl --silent -XGET --unix-socket /run/docker.sock http://localhost/containers/json | jq .

Список изображений

$ curl --silent -XGET --unix-socket /run/docker.sock http://localhost/images/json | jq .

Создание контейнера

CONTAINER_NAME="java-test" $ curl \ --silent \ --unix-socket /var/run/docker.sock \ "http:/containers/create?name=${CONTAINER_NAME}" \ -X POST \ -H "Content-Type: application/json" \ -d '{ "Image": "openjdk:8u111-jre-alpine", "Cmd": [ "java", "-version" ] }' | jq '.' { "Id": "602995e0d277e67417d9ad142959db7853a788bcd079ac33a72e24fb2db2f33c", "Warnings": null }

Запуск контейнера

$ curl \ --silent \ --unix-socket /var/run/docker.sock \ "http:/containers/${CONTAINER_NAME}/start" \ -X POST \ -H "Content-Type: application/json" \ --output /dev/null \ --write-out "%{http_code}"