-p 80:80 的 Docker 等效远程 API 命令?

ven*_*668 4 docker

我正在尝试使用 docker 的远程 API 启动 docker 容器。我可以启动容器,但无法公开容器的端口并将其映射到主机端口。

我需要远程 API JSON 来执行 ssh 命令

docker run -i -t --expose 80 -p 80:80 my_image_nodejs nodejs /var/www/server.js
Run Code Online (Sandbox Code Playgroud)

现在我正在使用以下 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": {}
    }
}
Run Code Online (Sandbox Code Playgroud)

提前致谢

小智 5

这对我有用:

容器创建

ExposedPorts: {"80/tcp": {}, "22/tcp": {}}

容器启动

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

如果您知道如何设置 Env,我刚刚发送了我的问题 :-)