通过将内容放入请求主体来创build一个使用REST API的新图像
我正在关注https://docs.docker.com/reference/api/docker_remote_api_v1.21/#create-an-image中提到的docker的“Create a image”REST API。
我想通过将内容放在请求主体中来创build一个图像。 关于链接的解释并没有详细说明请求和请求主体在这种情况下的样子。
有谁知道我应该如何构build这个REST API的请求的URL和正文?
通过跟踪docker import
命令的行为,显然/images/create
endpoint需要以包含文件的tar归档文件的forms填充图像。 我创build了一个包含单个文件的简单存档:
tar -c -f image.tar README
我能够像这样上传图像:
curl http://localhost:5555/images/create'?fromSrc=-&repo=larstest&tag=latest' \ -T image.tar -X POST
docker
的反应是:
HTTP/1.1 200 OK Content-Type: application/json Date: Wed, 26 Aug 2015 15:10:10 GMT Transfer-Encoding: chunked {"status":"2df6c21713e01af0118bbe2810307c2111e1d0168463affffe5c517d4debb7db"}
您可以通过在客户端和服务器之间设置日志logging代理来跟踪docker
客户端的行为。 我做到了这一点:
socat -v tcp-listen:5555,fork,reuseaddr unix-connect:/var/run/docker.sock
然后像这样运行docker
:
DOCKER_HOST=tcp://localhost:5555 docker import - larstest < image.tar