远程 API 调用看起来像什么,比如
$ docker run -d our-image
这里有一个关于docker run
正在做什么的高级视图,这是一个相关的问题。
我尝试应对以下ContainerConfig
部分:
curl -X GET 'http://0.0.0.0:2375/images/our-image/json'
对于此调用:
curl -X POST -H "Content-Type: application/json" -d $CONTAINER_CONFIG 'http://0.0.0.0:2375/containers/create'
然后执行docker run our-image
并比较创建的两个相应容器的输出:
curl -X GET 'http://0.0.0.0:2375/containers/<container-id>/json'
我注意到一些字段,例如 HostnamePath
,以及LogPath
在与 docker run
一起启动的版本中设置的。
如果我理解正确,您希望收集有关从 Docker 客户端传递到 Docker 守护程序的参数的详细信息。如果是这样,请尝试使用此解决方法:
cd /var/run
sudo mv docker.sock docker.sock.orig
sudo socat -v UNIX-LISTEN:/var/run/docker.sock,group=docker,perm=0660,reuseaddr,fork UNIX-CONNECT:/var/run/docker.sock.orig
此命令会将所有客户端请求转储为 JSON 对象。