通过Docker Remote API链接容器
我试图使用Docker远程API v1.7链接一个孩子mongo容器到一个父节点容器。
我看到HostConfig中的Links
属性,我猜是传递给
POST /containers/<id>/start
请求就好
{ "Links": ["<container-name>:<alias>", ...] }
我不知道如何命名mongo容器来启动节点容器。 是否有一个类似于docker run
的CLI -name
标志的API?
我是否需要制作一个单独的GET /containers/<id>/json
请求并使用自动生成的名称?
在当前的(1.8)API中, -name
标志作为查询string传递给POST /v1.8/containers/create
– 即:像这样:
POST /v1.8/containers/create?name=redis_ambassador
(为简洁起见,POST主体被遗漏了)
我通过使用Geoffrey Bachelet提出的使用socat作为我所有docker CLI命令代理的出色build议,使用以下命令来解决这个问题:
# on one terminal sudo socat -t100 -v UNIX-LISTEN:/tmp/proxysocket.sock,mode=777,reuseaddr,fork UNIX-CONNECT:/var/run/docker.sock # on a second terminal export DOCKER_HOST="unix:///tmp/proxysocket.sock"
随后的docker
cli命令将通过socat进行代理,其CLI调用将显示在另一个terminal上