我正在尝试使用 docker 的远程 API 启动 docker 容器。我可以启动容器,但无法公开容器的端口并将其映射到主机端口。
我需要远程 API JSON 来执行 ssh 命令
docker run -i -t --expose 80 -p 80:80 my_image_nodejs nodejs /var/www/server.js
现在我正在使用以下 JSON。
{
"Image": "f96f6e304cfcd630ee51af87baf30dfd42cf1f361da873a2f62ce6654d7a4c6b",
"Memory": 0,
"MemorySwap": 0,
"VolumesFrom": "",
"Cmd": [
"nodejs",
"/var/www/server.js",
"-D"
],
"PortBindings": {
"80/tcp": [
{
"HostIp": "0.0.0.0",
"HostPort": "80"
}
]
},
"ExposedPorts": {
"80/tcp": {}
}
}
提前致谢
最佳答案
这对我有用:
容器创建 :
ExposedPorts: {"80/tcp": {}, "22/tcp": {}}
容器启动 :
PortBindings: {"80/tcp": [{ "HostPort": "80"}],"22/tcp": [{ "HostPort": "22"}]
}
如果您知道如何设置 Env,我刚刚发送了我的问题 :-)
关于-p 80 :80? 的 Docker 等效远程 API 命令,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24104086/