REST API容器创建和端口绑定

时间:2013-12-17 09:52:59

标签: json rest docker lxc

我有来自dockerfile的图片,这是设置容器,但我需要使用docker REST API创建和启动容器。问题是我有暴露ssh端口的问题。 我已经从dockerfile中删除了EXPOSE,并构建了图像。

之后我使用这个json:/ / p>在/ containers / create上发出了POST请求

{"Image":"frantiseks/apac","ExposedPorts":{"22/tcp":{}},"Memory":600000,"CpuShares":50}

已成功创建容器,因此下一步我使用带有JSON的POST请求/containers/$id/start启动它:

{"PortBindings": { "22/tcp": [{ "HostPort": "11022" }] }}

但是在检查容器后我没有看到映射端口,所以容器没有暴露22到主机11022端口。 我使用的是0.7.1版本。

有人能告诉我我做错了什么吗?谢谢

PS:检查过的容器: http://jsonblob.com/52b01e45e4b0439bc58ec8d4

2 个答案:

答案 0 :(得分:1)

(为迟到的答案道歉,"社区"决定提出你的问题)

使用current 1.24 api,这都是在容器创建中完成的。您需要在其中包含以下内容:

   "HostConfig": {
     "PortBindings": { "22/tcp": [{ "HostPort": "11022" }] },
   }

答案 1 :(得分:0)

您尝试过: {HostIp:"", HostPort:"11022"}