我现在有一个码头管理员macvlan设置为这样:
docker network create -d macvlan --subnet=10.30.140.0/22 --gateway=10.30.143.254 -o parent=br0 NETNAME1我想给这个码头集装箱一个IP,这样它就可以在我们公司的任何地方访问,所以当我试图以这样的方式运行我的码头容器时:
docker run --net NETNAME1 -it --ip=10.30.141.43 -p 10.30.141.43:80:4873 --expose=80 verdaccio/verdaccio我可以从运行容器的主机以外的任何地方访问这个IP,但我不太清楚原因。我也想做,所以主机端口是80,集装箱港口是4873。但是,只有当我的url是http://10.30.141.43:4873时,我才能访问这个
有什么理由不把它重定向到80呢?
发布于 2018-10-19 18:06:09
对于路由问题,主机网络和码头网络之间可能有一些重叠,尝试为码头网络(如192.168.10.0/24或其他类似--subnet=10.10.140.0/24. )使用不同的子网。
对于端口映射,从docker运行中删除额外的内容并执行-p 80:4873
docker run -d -net NETNAME1 80:4873 verdaccio/verdaccio测试:
这些命令工作正常,我可以访问主机上的端口80。
docker network create -d macvlan --subnet=10.30.140.0/22 --gateway=10.30.143.254 NETNAME1
docker network ls
docker run -it --rm --net=NETNAME1 --name verdaccio -p 80:4873 verdaccio/verdaccio
docker pshttps://stackoverflow.com/questions/52897638
复制相似问题