【发布时间】:2021-11-19 17:56:04
【问题描述】:
背景:我正在尝试让 XDebug 从 docker 容器内连接到我的 IDE(我的 php 应用程序在我的开发机器上的容器内运行)。在我的 Macbook 上,这样做没有问题。但是,在 linux 上,我发现在容器中,我使用的端口 (9000) 在主机网关上不可见(使用sudo nmap -sT -p- 172.20.0.1,其中 172.20.0.1 是我在 docker 中的主机网关)。
我可以通过在我的开发机器上打开端口 9000 (sudo ufw allow 9000/tcp) 来解决这个问题。一旦我这样做了,容器就可以在主机网关上看到端口 9000。
我的问题:这完全有必要吗?我不喜欢打开防火墙端口的想法,以便在我的机器上运行的 docker 容器可以连接到它。有没有更安全的替代方案?
【问题讨论】:
标签: linux docker networking xdebug firewall