0

我假設有一種方法可以通過鏈接,外部鏈接和網絡鏈接進行鏈接。鏈接運行外部碼頭到碼頭服務器撰寫服務

任何想法?到目前爲止,我空手而歸。

這是從一個單獨的Ubuntu泊塢窗內發起了一個碼頭工人,撰寫摘要示例

version: '2' 
services: 
    web: 
    build: . 
    depends_on: 
    - redis 
redis: 
    image: redis 

我希望能夠連接到從泊塢窗Redis的端口推出的泊塢窗,撰寫。

我不想綁定主機上的端口,因爲這意味着我將無法從相同的模型啓動多個docker-compose。

- context - 我試圖從一個Jenkins maven構建Docker中運行一個docker-compose,以便我可以運行測試。但我無法在我的生活中獲得原始Docker訪問Docker上的公開端口 - 組成

回答

0

通過主機名引用計算機,v2默認通過專用網絡上的主機名自動連接節點。您將能夠在每個容器內ping「web」和「redis」。如果要從主機訪問機器,請在您的yml中爲每個服務包含一個「端口」定義。

v1鏈接已從v2撰寫語法中刪除,因爲它們現在是隱式的。從docker compose file documentation

鏈接與環境變量:作爲變量引用環境記錄,通過鏈接創建環境變量已經 棄用了一段時間。在新的Docker網絡系統中,他們已刪除 。您應該直接連接到適當的 主機名或自己設置相關的環境變量...

+0

我更新了描述,因爲它並不是很明顯我在做什麼。從一個已經運行的Ubuntu docker裏面,我需要開始一個docker compose,它將從上面的yaml開始。那個相同的Ubuntu docker需要訪問docker-compose網絡中的redis。我也不想綁定到整個主機,我想橋接兩個網絡之間的網絡連接。 – drewboswell

+0

我還沒有做docker裏面的docker,但是之前已經改變了$ DOCKER_HOST來訪問遠程docker主機,這與將'-H http:// host_ip:2375'傳遞給docker命令相同。這樣可以讓您在與其他碼頭機器相同的主機上的隔離網絡上構建測試機器。 – BMitch