This blog will list Docker wget requests. This assumes you are using boot2docker with https connection.
Create an Image
POST /images/create
$ wget --method=POST --header="Content-Type:application/json" --no-check-certificate --certificate=$DOCKER_CERT_PATH/cert.pem --private-key=$DOCKER_CERT_PATH/key.pem https://192.168.99.100:2376/images/create\?fromImage\=busybox -O - -v
Response
--2015-10-03 14:15:07-- https://192.168.99.100:2376/images/create?fromImage=busybox Connecting to 192.168.99.100:2376... connected. WARNING: cannot verify 192.168.99.100's certificate, issued by '/O=shekhargulati': Unable to locally verify the issuer's authority. HTTP request sent, awaiting response... 200 OK Length: unspecified [application/json] Saving to: 'STDOUT' - [<=> ] 0 --.-KB/s {"status":"Pulling from library/busybox","id":"1-ubuntu"} {"status":"Already exists","progressDetail":{},"id":"6003abefd7b2"}{"status":"Already exists","progressDetail":{},"id":"8171cf9d0131"}{"status":"Digest: sha256:e51c3b513c0b04603c32d6961858c5d380c94c1eb03ad8f66685ef3ddf280114"} {"status":"Pulling from library/busybox","id":"1.21-ubuntu"} - [ <=>
List images with dangling true filter
GET /images/json
Docker REST API documentation does not give an example of how to pass filters . You have to JSON encode them. This means you have to first convert them to JSON like {"dangling":["true"]}
and then use utility classes like Java’s URLEncoder.encode(json, UTF_8.name())
to encode json.
$ wget -i --header="Content-Type:application/json" --no-check-certificate --certificate=$DOCKER_CERT_PATH/cert.pem --private-key=$DOCKER_CERT_PATH/key.pem https://192.168.99.100:2376/images/json??all=false&filters=%7B%22dangling%22%3A%5B%22true%22%5D%7D -O - -v
Tag an image into a repository
POST /images/(name)/tag
$ wget --method=POST --header="Content-Type:application/json" --no-check-certificate --certificate=$DOCKER_CERT_PATH/cert.pem --private-key=$DOCKER_CERT_PATH/key.pem https://192.168.99.100:2376/images/openshift/hello-openshift/tag?repo=shekhargulati/hello-openshift&tag=v42 -O - -v
Get Container Logs
GET /containers/(id)/logs
$ wget --method=GET --header="Accept: application/vnd.docker.raw-stream" --no-check-certificate --certificate=$DOCKER_CERT_PATH/cert.pem --private-key=$DOCKER_CERT_PATH/key.pem https://192.168.99.100:2376/containers/05c49c850f83/logs?stderr=1&stdout=1×tamps=1&follow=1&tail=10 -O - -v
Exec Start
POST /exec/(id)/start
wget --method=POST --header="Accept:application/vnd.docker.raw-stream" --header="Content-Type:application/json" --body-data '{"Detach": false,"Tty": false}' --no-check-certificate --certificate=$DOCKER_CERT_PATH/cert.pem --private-key=$DOCKER_CERT_PATH/key.pem https://192.168.99.100:2376/exec/c481eeb18bf58cd5b1375fea57b7449f50f823ce3724a1eb344fb3fe5c1b6cf9/start -O - -v