在Docker 网络功能之前,您可以使用 Docker 链接功能来允许容器相互发现并将有关一个容器的信息安全地传输到另一个容器。随着 Docker 网络功能的引入,您仍然可以创建链接,但它们在默认bridge网络和 用户定义的网络之间的行为有所不同。.
假设您使用此命令运行一个简单的 Python Flask 应用程序:
$ docker run -d -P training/webapp python app.py
创建该容器时,该-P标志用于自动将其中的任何网络端口映射到Docker 主机上临时端口范围内的随机高端口。接下来,当docker ps运行时,您看到容器中的端口 5000 绑定到主机上的端口 49155。
$ docker ps nostalgic_morse
您还看到了如何使用-p标志将容器的端口绑定到特定端口。这里主机的 80 端口映射到容器的 5000 端口:
$ docker run -d -p 80:5000 training/webapp python app.py
你明白了为什么这不是一个好主意,因为它限制你只能在那个特定端口上使用一个容器。
相反,您可以指定一系列主机端口以将容器端口绑定到与默认临时端口范围不同的范围:
$ docker run -d -p 8000-9000:5000 training/webapp python app.py
这会将容器中的端口 5000 绑定到主机上 8000 到 9000 之间的随机可用端口。
还有一些其他方法可以配置-p标志。默认情况下,该-p标志将指定端口绑定到主机上的所有接口。但您也可以指定到特定接口的绑定,例如仅绑定到localhost.
$ docker run -d -p 127.0.0.1:80:5000 training/webapp python app.py
这会将容器内的端口 5000 绑定到主机上localhost或127.0.0.1接口上的端口 80 。
或者,要将容器的端口 5000 绑定到动态端口但仅限于 localhost,您可以使用:
$ docker run -d -p 127.0.0.1::5000 training/webapp python app.py
您还可以通过添加尾随/udp或/sctp. 例如:
$ docker run -d -p 127.0.0.1:80:5000/udp training/webapp python app.py
您还了解了docker port向我们显示当前端口绑定的有用快捷方式。这对于向您显示特定的端口配置也很有用。例如,如果您已将容器端口绑定到 localhost主机上的 ,则docker port输出会反映这一点。
$ docker port nostalgic_morse 5000
注意:该-p标志可以多次使用以配置多个端口。
Ubuntu是一个以桌面应用为主的Linux操作系统。它是一个开放源代码的自由软件,提供了一个健壮、功能丰富的计算环境,既适合家庭使用又适用于商业环境。Ubuntu将为全球数百个公司提供商业支持。 ...
查看全文Docker采取了一种保守的方法来清理未使用的对象(通常称为“垃圾收集”),例如图像,容器,卷和网络:除非您明确要求Docker这样做,否则通常不会删除这些对象。这可能会导致Docker使用额外的磁盘空...
查看全文新浪科技讯 北京时间5月27日晚间消息,据报道,四位知情人士今日透露,亚马逊、微软和谷歌这三大云计算服务提供商,正在竞争波音公司(Boeing)价值10亿美元的云服务合同。 这些...
查看全文新浪科技讯 北京时间5月27日晚间消息,据报道,多位知情人士今日称,继加州、纽约州和华盛顿州之后,马萨诸塞州和宾夕法尼亚州的总检察长也加入到对亚马逊的反垄断调查中。 如今,越来越...
查看全文
您好!请登录