[英]Some questions of Docker -p and Dockerfile
1: docker run -d -p 3000:3000 images
如果我在容器中啟動了一個localhost:3000
服務器,我如何在我的機器瀏覽器中打開它,ip 是多少? 我試過localhost:3000
或0.0.0.0:3000
。
2:我使用docker pull ubuntu
和docker run
它,在更新和部署服務器后我提交了它。所以現在我有一個ubuntu
和一個新圖像。
下次我使用這個新鏡像運行容器時,仍然需要獲取 shell 腳本,還需要再次重新打開服務器。
當我docker run
它時,我如何提交它可以提供腳本並自行部署的圖像。
謝謝。
我不太明白問題 2 或 3,您可以添加更多上下文嗎?
關於使用-p
的問題,您應該可以使用http://localhost:3000/在瀏覽器中訪問。 然而,這假設有幾件事是正確的。
首先,您使用了-p 3000:<container-port>
- 在這一點上看起來不錯。
其次,您運行的圖像暴露了端口 3000 ( EXPOSE 3000
)。
第三,容器中運行的服務正在偵聽0.0.0.0:3000
。 如果它在容器內偵聽 localhost ,則端口導出將不起作用。 每個容器都有自己的本地主機,它只能在容器內部使用。 因此它需要監聽容器內的所有 IP,以便外部連接能夠從容器外部訪問服務。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.