搜索

首页  >  问答  >  正文

docker不显示端口映射呢?

各位大虾好!小白我写了一个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那里为空,请问大神们这样情况是什么原因呢?

世界只因有你世界只因有你2773 天前1135

全部回复(2)我来回复

  • 習慣沉默

    習慣沉默2017-04-26 09:03:22

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

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

    回复
    0
  • 我想大声告诉你

    我想大声告诉你2017-04-26 09:03:22

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

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

    回复
    0
  • 取消回复