我运行了一个nginx容器,但未指定主机端口。
docker container run -d --name engineone nginx
[当我检查正在运行的容器时,它表明我运行了容器。
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d6b1d457b0b1 nginx "nginx -g 'daemon of…" About an hour ago Up 58 minutes 80/tcp engineone
现在,我想知道engineone
容器占用了哪个端口。所以我跑了..
docker container port engineone
但是输出什么也没有。我对Docker网络的工作方式有一些了解,但我想知道这是怎么可能的。它真的在没有主机端口的情况下运行吗?
全天完成一些研究,在docker doc ..
默认情况下,创建容器时,它不会将其任何端口发布到外界。要使端口可用于Docker外部的服务或未连接到容器网络的Docker容器,请使用
--publish
或-p
标志。这将创建一个防火墙规则,该规则将容器端口映射到Docker主机上的端口。
因此,在默认设置中,我们看不到端口,如果要查看它,则应将命令OPTION明确赋予该选项