EXPOSE指令实际上不会发布端口。它充当构建映像的人员和运行容器的人员之间的一种文档,用于发布要发布的端口。若要在运行容器时发布端口,请使用-pflag ondocker run发布和映射一个或多个端口,或使用-Pflag 发布所有公开的端口并将它们映射到高阶端口 无论设置EXPOSE如何,都可以在运行时使用-p标志覆盖它们 docker run...
(2)要通过宿主机ip+端口的方式访问服务,宿主机的端口必须与容器端口有映射关系; (3)如果没有暴露端口,-P自动映射不会映射任何端口,-p可以指定宿主机端口和容器端口形成映射。 过程如下: 环境:使用dockerfile制作nginx镜像进行试验 情况一:暴露端口80,不使用映射 分别使用宿主机ip地址+80端口、容器ip地址+80端口尝...
容器ip地址+80端口可以访问 情况五:不暴露端口,使用自动映射-P 分别使用宿主机ip地址+80端口(无自动映射端口,因此用80)、容器ip地址+80端口尝试访问nginx,结果如下: 宿主机ip地址+80端口无法访问 容器ip地址+80端口可以访问 情况六:不暴露端口,使用手动映射-p 分别使用宿主机ip地址+手动映射的8082端口、容器ip地...