Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  docker在哪里配置端口?

docker在哪里配置端口?

coldplay.xixi
coldplay.xixiasal
2020-06-19 09:33:103946semak imbas

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教程

Atas ialah kandungan terperinci docker在哪里配置端口?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn