通过Docker Remote API链接容器

时间:2013-12-03 23:14:32

标签: docker

我正在尝试使用Docker远程API v1.7将子mongo容器链接到父节点容器。

我在HostConfig中看到Links属性,我猜测它被传递给了 POST /containers/<id>/start请求

{
  "Links": ["<container-name>:<alias>", ...]
}

我没有看到如何命名在启动节点容器时使用的mongo容器。是否有类似于-name的CLI docker run标志的API?

我是否需要单独生成GET /containers/<id>/json个请求并使用自动生成的名称?

1 个答案:

答案 0 :(得分:9)

在当前的(1.8)API中,-name标志作为查询字符串传递给POST /v1.8/containers/create - 即像这样:

POST /v1.8/containers/create?name=redis_ambassador

(为了简洁而遗漏了POST机构)

我通过使用Geoffrey Bachelet使用socat作为所有docker CLI命令的代理使用以下命令的优秀建议来解决这个问题:

# 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调用将显示在另一个终端上