系统:Ubuntu 14.04 x64
1,在本地虚拟机搭建的Ubuntu14.04 配置的docker-compose.yml 相同端口和不同端口的转发,都能访问
2,在服务器上使用相同的配置文件, docker-compose up -d 启动之后,
在服务器上使用 curl http://127.0.0.1:80 能访问, 使用 curl http://服务器IP:80,就不能访问,
如果把端口改成 81:80 通过http://服务器IP:81 也能访问
netstat 看过端口,80没有被占用
docker-compose.yml 配置
ports:
- "80:80"
- "3001:3000"
服务器端:
0.0.0.0:80->80/tcp
0.0.0.0:3001->3000/tcp
3001端口能访问么?
应该是80端口被防火墙封了...
在另一台服务器上安装nmap
然后执行以下命令查看80端口是否被封:
192.168.59.1是第一台服务器的IP.
如果80端口被封了, 输出状态为filtered
如果80端口是被占用的,在启动容器的时候就会提示端口已被占用,所以如果容器启动正常基本可以排除端口占用的问题了。另外81端口正常,而80端口有问题,说明80端口可能被特殊照顾了,虽然Ubuntu系统的防火墙是默认关闭的,但是最好还是排查下吧。
1.检查服务器本地防火墙
2.联系服务器提供商,问下80是否被墙