各位大虾好!小白我写了一个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那里为空,请问大神们这样情况是什么原因呢?
EXPOSE는 동일한 네트워크 내의 서비스에 열려 있고 액세스할 수 있는 포트를 나타냅니다. 그러나 호스트 시스템에는 공개되지 않습니다.
docker ps에서 포트 번호를 보려면 docker 실행 시 -p 또는 -P 매개변수를 지정해야 합니다. 예를 들어
-p 80:8080
컨테이너의 포트 8080을 호스트의 포트 80에 매핑합니다.docker ps의 PORTS는
에서 지정한 포트 매핑을 표시합니다.docker run -p
EXPOSE
은 다른 컨테이너(외부 네트워크 아님)에 열려 있는 포트를 의미하며, 이는 docker ps에 표시되지 않습니다.