簡體   English   中英

如何將端口公開給主機的臨時端口並將其綁定到 localhost

[英]How do I expose port to host's ephemeral port and bind it to localhost

Docker 撰寫問題(任何版本都可以)

我需要將容器中的端口 60000 暴露給主機的臨時(隨機)端口,並將其僅綁定到 localhost。

句法

ports: 
   - 60000

導致 0.0.0.0:32XXX 端口暴露。

語法- "127.0.0.1:YYYY:60000"需要我設置 static 主機端口 (YYYY)

我知道我可以綁定 docker 守護程序以僅在 localhost 上偵聽,但這對我來說並不適用,因為我需要另一個容器來偵聽 0.0.0.0

如果您顯示的語法不起作用,則 Docker Compose 3.7 無法執行此操作(但它可能是一個相當簡單的 GitHub 拉取請求來添加它)。 (另請注意,此語法記錄docker run文檔中;這只是 Compose 中的一個解析問題。)

最好的解決方法可能是自己選擇一個“公共”端口。 如果您嘗試調整圍繞docker run -p 127.0.0.1::60000甚至docker run -P構建的工作流程,那將更加棘手。

Docker Compose 的實際源代碼位於 GitHub docker docker/compose存儲庫中。 這包括docker-compose.yml文件的配置模式,以及處理ports:內容的ServicePort.parse方法:. 似乎字符串的parse方法不支持丟失的已發布端口(我不確定為什么),並且架構不允許external_ip:長語法選項。

暫無
暫無

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

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