我正在嘗試爲我的項目設置開發環境。在Docker中使用主機網絡和其他網絡撰寫
我有一個容器應該放在他自己的網絡(「服務」在我的情況),和一個容器(apigateway)應該訪問該網絡,同時暴露一個HTTP端口到主機的網絡。
理想的情況下我的搬運工撰寫的文件應該是這樣的:
version: '2'
services:
ms1:
expose:
- "13010"
networks:
services:
aliases:
- ms1
apigateway:
networks:
services:
aliases:
- api
network_mode: "host"
networks:
services:
泊塢窗,撰寫不允許在同一時間使用network_mode和網絡。
我還有其他的選擇嗎?
目前我使用的是這樣的:
apigateway:
networks:
services:
aliases:
- api
ports:
- "127.0.0.1:10000:13010"
然後apigateway容器上0.0.0.0:13010監聽。它可以工作,但速度很慢,如果主機的互聯網連接斷開,它會凍結。
另外,我正計劃在碼頭工人未來使用流浪者,它是否允許以一種乾淨的方式解決?
你能直接使用一個IP地址ms1嗎?請參閱https:// stackoverflow。com/questions/27937185/assign-static-ip-to-docker-container如何用docker做到這一點1.10.1 –
我試圖做同樣的事情,但要解決一個不同的問題(也許)。在我的情況下,我創建了兩個服務之間共享的網絡,但由於某種原因,其中一個服務未連接到互聯網(我認爲原因不是主機網絡的一部分)。但是,問題在於它無法解析URL,因爲無法訪問DNS。我做了一個使用IP地址的quickfix,但會徹底查看它以將請求轉發給正確的DNS。 – omrsin