分享好友 资讯首页 频道列表

云计算核心技术Docker教程:docker-compose扩展配置

2020-12-31 18:006200

Docker Compose的extends关键字允许在不同文件甚至整个项目之间共享通用配置。如果您有多个服务可以重用一组通用的配置选项,则扩展服务很有用。使用extends您可以在一个地方定义一组通用的服务选项,并可以从任何地方引用它。

请记住,volumes_from并且depends_on永远不会在使用的服务之间共享extends。这些异常的存在是为了避免隐式依赖性。您总是volumes_from在本地定义。这样可以确保在读取当前文件时,服务之间的依赖关系清晰可见。在本地定义这些文件还可以确保对引用文件的更改不会破坏任何内容。

在中定义任何服务时docker-compose.yml,您可以声明要扩展另一个服务,如下所示:

web:

      extends:

            file: common-services.yml

            service: webapp

这指示Compose重新使用webapp该common-services.yml文件中定义的服务的配置。假设common-services.yml 看起来像这样:

webapp:

      build: .

      ports:

          - "8000:8000"

      volumes:

          - "/data"

在这种情况下,您获得的结果与使用编写 docker-compose.yml的完全相同build,ports并且volumes直接在之下定义了配置值web。

您可以在以下位置进一步定义本地配置(或重新定义) docker-compose.yml:

web:

      extends:

           file: common-services.yml

           service: webapp

      environment:

         - DEBUG=1

      cpu_shares: 5

important_web:

     extends: web

     cpu_shares: 10

您还可以编写其他服务并将您的web服务链接到它们:

web:

      extends:

         file: common-services.yml

         service: webapp

     environment:

         - DEBUG=1

     cpu_shares: 5

    depends_on:

       - db

db:

    image: postgres

反对 0
举报 0
收藏 0
打赏 0
评论 0
2026云计算新图景:混合AI、多云战略与成本优化引领变革浪潮
2026云计算新图景:混合AI、多云战略与成本优化引领变革浪潮

0评论2026-01-061452

2025量子科技和产业大会:前沿成果闪耀,量子产业迈向新征程
2025量子科技和产业大会:前沿成果闪耀,量子产业迈向新征程

0评论2025-11-262557

AI浪潮下企业转型陷两难,青云科技“渐进式创新”破局有招
AI浪潮下企业转型陷两难,青云科技“渐进式创新”破局有招

0评论2025-11-202989

谷歌入局私有云计算:与苹果共探手机AI隐私保护新路径
谷歌入局私有云计算:与苹果共探手机AI隐私保护新路径

0评论2025-11-131109

Aqara Space重庆旗舰店启幕 以科技美学赋能西南空间智能新体验
Aqara Space重庆旗舰店启幕 以科技美学赋能西南空间智能新体验

0评论2025-10-312159

华为擎云智慧能源方案亮相煤炭展:以科技守护煤炭行业安全与发展
华为擎云智慧能源方案亮相煤炭展:以科技守护煤炭行业安全与发展

0评论2025-10-312784