• 注册
  • 云计算 云计算 关注:2 内容:41332

    云计算核心技术Docker教程:Docker 使用网络端口映射连接

  • 查看作者
  • 打赏作者
  • 当前位置: 职业司 > 资讯 > 云计算 > 正文
    • 云计算
    • 在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标志可以多次使用以配置多个端口。

      请登录之后再进行评论

      登录

      手机阅读天地(APP)

      • 微信公众号
      • 微信小程序
      • 安卓APP
      手机浏览,惊喜多多
      匿名树洞,说我想说!
      问答悬赏,VIP可见!
      密码可见,回复可见!
      即时聊天、群聊互动!
      宠物孵化,赠送礼物!
      动态像框,专属头衔!
      挑战/抽奖,金币送不停!
      赶紧体会下,不会让你失望!
    • 实时动态
    • 签到
    • 做任务
    • 发表内容
    • 偏好设置
    • 到底部
    • 帖子间隔 侧栏位置:
    • 还没有账号?点这里立即注册