我用一个简单的 webapp 尝试 docker :
docker run -d -v $(pwd):/app -p 8080:80 image_name
我在 8080 上有 docker 监听:
tcp6 0 0 :::8080 :::*
LISTEN 13304/docker
所以我可以通过 localhost:8080 测试我的网络应用程序
我将 iptables 与 UFW 一起使用,但我拒绝传入,除了:80、443 和 22
但令人惊讶的是,如果我从 Internet 到我的机器上的 8080 端口做一个 netcat,我可以访问我的网络应用程序!
Docker 必须做一些特别的事情,因为如果我这样启动 socat:
socat TCP6-LISTEN:8080 TCP4:www.google.fr:80
我明白 :
tcp6 0 0 :::8080 :::*
LISTEN 11577/socat
但是这次我无法从外部连接...... UFW 完成了他的工作......