文章詳情頁
docker不顯示端口映射呢?
瀏覽:422日期:2024-10-18 13:37:20
問題描述
各位大蝦好!小白我寫了一個dockerfile,內容如下:
FROM ubuntu:14.04MAINTAINER Chris Chan '[email protected]'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那里為空,請問大神們這樣情況是什么原因呢?
問題解答
回答1:EXPOSE 是開放哪些端口,這些端口在同一個網絡內的服務中是可以訪問的。但并不對宿主機開放。
要想在 docker ps 中看到端口號需要 docker run 的時候指定 -p 或 -P 參數,如 -p 80:8080 把容器中的 8080 端口映射到宿主機的 80 端口。
回答2:docker ps的PORTS顯示的是docker run -p指定的端口映射
EXPOSE的意思是向其他container(而不是外部網絡)開放的端口, 而且這個不顯示在docker ps。
相關文章:
1. macos - mac下docker如何設置代理2. docker - 各位電腦上有多少個容器啊?容器一多,自己都搞混了,咋辦呢?3. 關docker hub上有些鏡像的tag被標記““This image has vulnerabilities””4. android studio總是在processes running好久5. java - 請問在main方法中寫成對象名.屬性()并賦值,與直接參參數賦值輸錯誤是什么原因?6. MySQL數據庫中文亂碼的原因7. dockerfile - 我用docker build的時候出現下邊問題 麻煩幫我看一下8. angular.js - 關于$apply()9. docker-compose 為何找不到配置文件?10. mysql - 新浪微博中的關注功能是如何設計表結構的?
排行榜
