docker - docker中的Flask,访问本地运行的其他flask服务器
问题描述
在找到这个问题的解决方案后,我有另一个问题:我正在一个 docker 容器(我的网络地图)中运行一个烧瓶应用程序,并且在这张地图上我想显示一个正在运行的(基于烧瓶的) Terracotta 瓷砖服务器提供的瓷砖在另一个码头集装箱中。这两个容器位于同一个 docker 网络上并且可以相互通信,但是只有我的 Web 服务器运行的端口对公众开放,我喜欢保持这种状态。有没有一种方法可以“从本地”以某种方式提供我的图块,而无需打开图块服务器的端口?也许通过设置一些重定向或其他方式?
主要原因是我需要其他人为我打开端口,这需要很长时间。
解决方案
如果你在像 ec2 这样的远程机器上运行你的 docker 容器,那么你不必担心端口对公共开放,因为默认情况下端口在 ec2 或类似服务中是关闭的。您只需要打开运行应用程序的端口,就可以使用 aws 控制台。
如果您在本地运行 docker 容器或在您没有 cosole 访问权限的某些服务器上运行,那么您可以使用某种防火墙来打开或关闭端口。我个人更喜欢UFW用于 Ubuntu 系统。您可以使用简单的命令来允许特定范围的端口,例如sudo ufw allow 9000
允许端口 9000 上的传入 tcp 数据包。类似地,您可以deny
将数据包传入端口。此外,您可以使用sudo ufw allow from <ip address>
.
推荐阅读
- css - Responsive table scrollbar overlaps fixed header
- python - 如何有效解决复合成本函数优化问题?
- javascript - 在 Google Maps Javascript API 中显示多个方向
- php - 过滤MySQL结果-PHP如何记住选择的类别?
- reactjs - 如何从 React 中的 HOC 向根元素注入属性?
- java - printWorkingDirectory() 给出 null
- regex - 通过动态 htaccess RewriteRule 向旧 ID 添加数字
- reactjs - 提交表单后加载组件
- sql-server - ms-sql 按组标识符返回最大变量
- python - 我想使用 for 循环从文本类型网站中提取某个段落