2018年03月27日 01:32:13 閱讀數:2249更多nginx
我的分類: Dockerweb
# docker run -d -p 80 --name myweb 1311399350/myweb nginx -g "daemon off;"
上面的-p 80
,將在docker主機上隨機打開一個端口(可利用docker port命令查看,或者docker ps也能看到,這裏是32768)映射到容器中的80端口上。docker
除了自動映射外,還能夠指定映射關係,如:spa
# 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端口。這樣的指定有好有壞,好處是端口已知,須要當心使用;壞處是沒法運行多個一樣的容器,並且容易與宿主機的應用衝突。.net
咱們在dockerfile中指定了容器暴露的端口或端口範圍code
EXPOSE 20010 EXPOSE 10011
利用大寫的-P
參數,將dockerfile中EXPOSE指令指定的端口(容器內端口)對本地宿主機公開,並隨機綁定到本地宿主機的端口上。blog
# docker run -d -P --name myweb 1311399350/myweb nginx -g "daemon off;"
使用# docker port container containre-port
,查看容器映射的宿主機端口get
# docker port myweb 80 0.0.0.0:32771