在同一docker-compose.yml文件中扩展服务

时间:2018-08-01 12:29:06

标签: docker docker-compose

假设我有一项服务,例如:

my-service:
  build:
    context: "./my-service"
    dockerfile: Dockerfile.dev
  ports:
    - 8072:8000
  depends_on:
    - another-service
  environment:
    PROXY: "true"

我想用完全相同的配置但只用不同的端口创建my-service-2。我可以这样做:

my-service-2:
  build:
    context: "./my-service"
    dockerfile: Dockerfile.dev
  ports:
    - 8073:8000
  depends_on:
    - another-service
  environment:
    PROXY: "true"

但是我有什么办法可以做:

my-service-2 extends my-service:
  ports:
    - 8073:8000

所以我不需要多次重写同一件事。

谢谢!

1 个答案:

答案 0 :(得分:1)

在撰写v2.1之前一直支持扩展,尽管它的用法不是您要求的。

您需要将通用配置保存在一个撰写文件中,并且可以在docker-compose.yml中定义从通用撰写配置扩展的服务。

这里是一个详尽的示例和文档: https://docs.docker.com/compose/extends/