簡體   English   中英

通過網絡鏈接的外部容器的別名

[英]aliases for external containers linked through network

假設我們有兩個網絡服務:alpha和beta

1) alpha docker-compose.yml

version: '2'

services:
    web:
        build: .
        env_file: local.env
        networks:
          - default
          - beta

    networks:
        beta:
            external:
                name: beta_default

2) beta docker-compose.yml

version: '2'

services:
    web:
        build: .
        env_file: .env
        expose:
          - "5000"

這樣我可以交互(例如平) beta_web_1從容器alpha_web_1容器。 我想要的是為beta_web_1容器創建一個別名,以便我可以在有效的URL之后命名它,例如: beta.local

我希望這可以在docker-compose.yml里面發生alpha或以任何方式將其保持在alpha的視圖范圍內,這樣我就不需要為beta_web_1更改實際的系統范圍名稱

這可能嗎?

我錯過了networks下有一個aliases選項。 這樣,如果我們將docker-compose.yml文件更改為:

1)alpha / docker-compose.yml:

version: '2'

services:
    web:
        build: .
        env_file: local.env
        networks:
          default:
             aliases:
                - alpha.local
          beta:

networks:
    beta:
        external:
            name: beta_default

2)beta / docker-compose.yml

version: '2'

services:
    web:
        build: .
        env_file: .env
        expose:
          - "5000"
        networks:
          default:
             aliases:
                - beta.local
          alpha:

networks:
    alpha:
       external:
            name: alpha_default

現在,我們可以ping beta.local由α和容器alpha.local從測試容器。

暫無
暫無

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

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