docker在哪里配置端口?

docker在哪里配置端口?

docker在哪里配置端口?

docker配置端口的地方:

1. 自動映射

#?docker?run?-d?-p?80?--name?myweb?1311399350/myweb?nginx?-g?"daemon?off;"

上面的-p 80,將在docker主機上隨機打開一個端口(可利用docker port命令查看,或者docker ps也能看到,這里是32768)映射到容器中的80端口上。

2. 指定映射

除了自動映射外,還可以指定映射關系,如:

#?docker?run?-d?-p?80:80?--name?myweb?1311399350/myweb?nginx?-g?"daemon?off;" #?docker?port?myweb?80 0.0.0.0:80

可以看出,宿主機的80端口映射到容器的80端口。這樣的指定有好有壞,好處是端口已知,需要小心使用;壞處是無法運行多個同樣的容器,而且容易與宿主機的應用沖突。

3. 公開dockerfile中EXPOSE指令指定的端口

我們在dockerfile中指定了容器暴露的端口或端口范圍

EXPOSE?20010 EXPOSE?10011

利用大寫的-P參數,將dockerfile中EXPOSE指令指定的端口(容器內端口)對本地宿主機公開,并隨機綁定到本地宿主機的端口上。

#?docker?run?-d?-P?--name?myweb?1311399350/myweb?nginx?-g?"daemon?off;"

使用# docker port container containre-port,查看容器映射的宿主機端口

#?docker?port?myweb?80 0.0.0.0:32771

推薦教程:《docker教程

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊15 分享