Extend

Docker Compose的extends属性允许你在不同的文件,甚至是完全不同的项目之间共享公共配置

如果你有几个service需要重用一组公共配置选项,那么Extend服务非常有用。通过Extend,你可以在一个地方定义一组公共服务选项,并从任何地方引用它。您可以引用另一个Compose文件,并选择您希望在自己的应用程序中也使用的服务,并能够根据自己的需要覆盖某些属性。

compose.yml
services:
  web:
    extends:
      file: common-services.yml
      service: webapp

这指示Compose重用在文件common-services.yml中定义的web应用服务的配置:

common-services.yml
services:
  webapp:
    build: .
    ports:
      - "8000:8000"
    volumes:
      - "/data"

在这种情况下,Docker Compose执行的compose.yml文件内容大致如下:

services:
  web:
    build: .
    ports:
      - "8000:8000"
    volumes:
      - "/data"

Last updated

Was this helpful?