内容简介:尝试删除您创建的所有网络,如下所示:docker network rm $(docker network ls -q)然后再次运行docker-compose
当我使用 docker 时使用非常简单的命令:
docker run -p 80:80 nginx
端口转发工作正常,当我使用浏览器/ curl转到localhost:80时,我可以获得nginx’欢迎页面’.
在我使用非常相似但docker-compose特定配置的同时:
version: '3' services: nginx: image: nginx ports: - "80:80"
当我做docker-compose并进入浏览器时 – 我看到无限加载,所以看起来端口转发没有正确配置,但我无法理解配置中的错误.
我尝试使用不同的浏览器和卷曲,我得到相同的结果 – 无限加载.
这里的Nginx只是一个例子,因为它很简单,事实上我对redis / mysql / java图像有同样的问题,所以问题与nginx无关.
我还尝试了以下方法通过docker-compose启动容器:
docker-compose run -p 80:80 nginx docker-compose run --service-ports nginx
但没有运气,我得到了同样的结果.
在两种情况下(docker run和docker-compose up)我都有相同的网络驱动程序类型 – bridge.
我已经比较了docker inspect<container id>的结果.对于这两种情况: http://i.prntscr.com/obvxi0yESEa92znLDEu_PA.png
和docker检查<network id>的结果:
http://i.prntscr.com/yyTpetvJSXa-dz4o9Pcl3w.pngifconfig docker0结果:
docker0 Link encap:Ethernet HWaddr 02:42:f1:9a:b6:72 inet addr:172.17.0.1 Bcast:0.0.0.0 Mask:255.255.0.0 inet6 addr: fe80::42:f1ff:fe9a:b672/64 Scope:Link UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:174 errors:0 dropped:0 overruns:0 frame:0 TX packets:837 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:47434 (47.4 KB) TX bytes:107712 (107.7 KB)
brctl显示结果:
bridge name bridge id STP enabled interfaces br-f7adc3956101 8000.02427f870e7f no docker0 8000.0242f19ab672 no
主机上的ifconfig结果为: https://pastebin.com/6ufWeYTE
主机上的路由结果:
Destination Gateway Genmask Flags Metric Ref Use Iface default gateway 0.0.0.0 UG 600 0 0 wlp4s0 link-local 0.0.0.0 255.255.0.0 U 1000 0 0 docker0 172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0 192.168.0.0 0.0.0.0 255.255.255.0 U 600 0 0 wlp4s0
docker和docker-compose都是使用适用于 Linux 的官方站点说明安装的.
主机操作系统:Ubuntu 17.04
更新:
我试图在compose配置中设置’可附加’网络属性,问题得到解决.虽然还不清楚为什么会这样.
networks: default: attachable: true
尝试删除您创建的所有网络,如下所示:
docker network rm $(docker network ls -q)
然后再次运行docker-compose
翻译自:https://stackoverflow.com/questions/47043428/docker-compose-port-forwarding-not-working-properly
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Clean Architecture
Robert C. Martin / Prentice Hall / 2017-9-20 / USD 34.99
Practical Software Architecture Solutions from the Legendary Robert C. Martin (“Uncle Bob”) By applying universal rules of software architecture, you can dramatically improve developer producti......一起来看看 《Clean Architecture》 这本书的介绍吧!