alias

网络上此服务的别名(备用主机名)。同一网络上的其他容器可以使用服务名称或此别名来连接到服务的容器中的一个。

由于别名是网络范围的,因此同一服务在不同的网络上可以具有不同的别名。

网络范围内的别名可以由多个容器甚至多个服务共享。如果是这样,则无法保证容器名称的正确解析。

正常格式像下面这样:

services:
  some-service:
    networks:
      some-network:
        aliases:
          - alias1
          - alias3
      other-network:
        aliases:
          - alias2

在下面的示例中,提供了三个服务(Web,Worker和db)以及两个网络(new和legacy)。在new网络上的主机名db或database以及legacy网络上的db或mysql上均可访问db服务。

version: "3.9"

services:
  web:
    image: "nginx:alpine"
    networks:
      - new

  worker:
    image: "my-worker-image:latest"
    networks:
      - legacy

  db:
    image: mysql
    networks:
      new:
        aliases:
          - database
      legacy:
        aliases:
          - mysql

networks:
  new:
  legacy:

Last updated