跟随容器内的docker端口映射

时间:2017-02-01 14:42:29

标签: web docker port

我有一台带有静态外部ip的云端PC,f.e。 i = 0; var arr = this.old.split(', '); angular.forEach($scope.phones, function(value, key){ if(arr[i] != value.data.profile.username ){ this.customHtml += '<li>' + value.data.profile.username + '</li>'; this.old += ', '+value.data.profile.username; } i++; }); 在里面我用nginx安装了docker,并像这样映射了80端口

162.243.100.100

我可以从主机docker run -it -p 80:80 nginx 访问nginx演示页 我能够从所述容器内部curl 162.243.100.100访问nginx演示页面。

但是我希望能够从所述nginx容器内部从命令curl localhost访问ngninx演示页。
看来这不遵循端口映射,只是给我超时错误 我很瘦,我需要对网络设置做些什么,但不知道是什么。

2 个答案:

答案 0 :(得分:1)

创建network并在该网络中启动容器:

docker network create --subnet 172.16.0.0/16 dockernet

docker run -it -p 80:80 --net=dockernet nginx

答案 1 :(得分:1)

简短的回答是“不要这样做。”

来自Docker的默认iptables规则和路由表未设置为将流量从容器路由到主机并通过docker-proxy返回到容器。考虑到这是多少反模式,我不认为它是改变这种行为的优先事项。从容器到容器交谈时,使用该工具并使用docker网络和容器名称要容易得多。