簡體   English   中英

Docker容器-端口設置

[英]Docker Container - ports settings

您能解釋一下與Docker容器端口有關的一件事嗎?

場景:我創建了一個新的Dockerfile和docker-compose.yml文件( https://github.com/fdolsky321/Jenkins_Docker ),並使用EXPOSE 49005以及將docker-compose.yml中的兩個端口都配置為49005。 (docker-compose中的卷設置正確嗎?我使用的是Windows 10 Pro)。

然后我將其構建並推送,最后,我使用了docker-compose up ...但是后來我看到,仍然存在默認端口8080和50000,請您解釋一下,怎么可能,仍在發生這些端口,我不想使用?

然后,我嘗試運行此映像,但是無法在任何端口(8080、50000、49005)上打開jenkins。 當我使用docker run命令時,它工作得很好,但是我想使用docker-compose.yml文件中使用的端口。

您能給我一些建議,即端口如何在docker中工作嗎?

https://imgur.com/a/0KLF

這些端口可能未映射到正在運行容器的主機中。 docker-compose文件端口中有一個指令。 為了將端口映射到主機,只需指定關聯的端口,主機可以通過該端口訪問一個內部容器。 例如:

ports: 
   - 7777:7777 

因此,可以通過主機上的7777訪問容器內部的7777。 左側主機一個,右側容器一個。 請參閱文檔以獲取更多詳細信息: https : //docs.docker.com/compose/compose-file/#ports
抱歉,如果我對您的問題理解不正確。

如果您運行docker ps您將在容器的ports部分中看到類似0.0.0.0:49005->8080/tcp的內容。

如果使用docker run,則需要docker run -p 49005:49005 my-image

要么

如果您使用的是docker-compose,則需要添加

    ports:
      - "49005:49005"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM