docker不显示端口映射呢?

发布于 2022-09-04 06:39:22 字数 679 浏览 35 评论 0

各位大虾好!小白我写了一个dockerfile,内容如下:

FROM ubuntu:14.04
MAINTAINER Chris Chan "chenx1242@163.com"
ENV REFRESHED_AT 2016-12-05
RUN apt-get -y update && apt-get install -y nginx
RUN mkdir -p /var/www/html/website
ADD nginx/global.conf /etc/nginx/conf.d/
ADD nginx/nginx.conf /etc/nginx/nginx.conf
EXPOSE 80

然后又在本地写了一个index.html,然后启动这个镜像却发现port那里为空,请问大神们这样情况是什么原因呢?
图片描述

使用了8080:80之后的还是这样

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

清晰传感 2022-09-11 06:39:22

EXPOSE 是开放哪些端口,这些端口在同一个网络内的服务中是可以访问的。但并不对宿主机开放。

要想在 docker ps 中看到端口号需要 docker run 的时候指定 -p 或 -P 参数,如 -p 80:8080 把容器中的 8080 端口映射到宿主机的 80 端口。

总以为 2022-09-11 06:39:22

docker ps的PORTS显示的是docker run -p指定的端口映射

EXPOSE的意思是向其他container(而不是外部网络)开放的端口, 而且这个不显示在docker ps。

瞄了个咪的 2022-09-11 06:39:22

nginx 容器里不设置cmd 起不来的 可以先pull一个官方的nginx
docker inspect 容器名称 看看默认的CMD加到dockerfile里面就能看见端口了
关于CMD docker官方也有解释nginx为什么必须执行CMD

街角卖回忆 2022-09-11 06:39:22

朋友,你解决了这个问题了吗,我也遇到了该问题。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文