【问题标题】:How to assign a host port to container port using docker if container is already created and running?如果容器已经创建并运行,如何使用 docker 将主机端口分配给容器端口?
【发布时间】:2014-10-29 09:54:06
【问题描述】:

我们可以创建一个新容器并在 docker run 命令中定义您的应用程序端口

sudo docker run -d -p 5000:5000 training/webapp python app.py

或

sudo docker run -d -P training/webapp python app.py

但是,如果有人忘记在 docker run 命令中指定 -p 或 -P 选项怎么办?容器被创建并在本地运行应用程序。现在如何将应用程序在容器中本地运行的端口分配给我的 Ubuntu 主机的端口? 请帮忙。 谢谢。

【问题讨论】:

标签: mapping port docker linux-containers


【解决方案1】:

简短:你不能。您需要停止(或不停止)容器并使用适当的参数启动一个新容器。

Docker 启动一个本地代理并设置 iptables 以进行正确的 NAT。如果你真的不能启动一个新容器,你可以手动设置 iptables 并启动一个 socat。您可以查看 Docker 代码的网络部分以获取更多信息。

【讨论】:

    猜你喜欢
    • 2022-09-23
    • 1970-01-01
    • 2016-10-12
    • 2020-02-29
    • 1970-01-01
    • 2013-07-20
    • 2019-01-20
    • 2013-10-20
    相关资源
    最近更新 更多