您的位置:首頁技術文章
文章詳情頁

docker不顯示端口映射呢?

瀏覽:423日期:2024-10-18 13:37:20

問題描述

各位大蝦好!小白我寫了一個dockerfile,內容如下:

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

然后又在本地寫了一個index.html,然后啟動這個鏡像卻發現port那里為空,請問大神們這樣情況是什么原因呢?docker不顯示端口映射呢?

docker不顯示端口映射呢?

問題解答

回答1:

EXPOSE 是開放哪些端口,這些端口在同一個網絡內的服務中是可以訪問的。但并不對宿主機開放。

要想在 docker ps 中看到端口號需要 docker run 的時候指定 -p 或 -P 參數,如 -p 80:8080 把容器中的 8080 端口映射到宿主機的 80 端口。

回答2:

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

EXPOSE的意思是向其他container(而不是外部網絡)開放的端口, 而且這個不顯示在docker ps。

相關文章:
国产综合久久一区二区三区