docker-通过网络链接的外部容器的别名

可以说我们有两个Web服务:alpha&贝塔

1)docker-compose.yml为alpha:

version: '2'

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

    networks:
        beta:
            external:
                name: beta_default

2)docker-compose.yml for beta:

version: '2'

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

这样,我可以从alpha_web_1容器进行交互(例如ping)beta_web_1容器.我想要的是为beta_web_1容器创建一个别名,以便我可以用有效的URL(例如beta.local)命名.

我希望在docker-compose.yml中为alpha或以使其保持在alpha视角范围内的任何方式发生这种情况,因此我无需更改beta_web_1的实际系统范围名称

这可能吗?

最佳答案
我错过了网络下的别名选项.这样,如果我们将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

现在我们可以从alpha ping到beta.local容器,从beta ping到alpha.local容器.

相关文章

最近一直在开发Apworks框架的案例代码,同时也在一起修复Apw...
最近每天都在空闲时间努力编写Apworks框架的案例代码WeText。...
在《Kubernetes中分布式存储Rook-Ceph部署快速演练》文章中,...
最近在项目中有涉及到Kubernetes的分布式存储部分的内容,也...
CentOS下Docker与.netcore(一) 之 安装 CentOS下Docker与.ne...
CentOS下Docker与.netcore(一) 之 安装 CentOS下Docker与.ne...