云计算核心技术Docker教程:docker-compose使用多个配置文件
使用多个Compose文件使您可以针对不同的环境或不同的工作流程自定义Compose应用程序。 默认情况下,Compose读取两个文件,一个docker-compose.yml和一个可选 docker-compose.override.yml文件。按照约定,docker-compose.yml 包含您的基本配置。顾名思义,替代文件可以包含现有服务或全新服务的配置替云计代。 如果在两个文件中都定义了服务,则Compose使用添加和覆盖配置中描述的规则合并 配置。 要使用多个替代文件或具有不同名称的替代文件,可以使用该-f选项指定文件列表。Compose按照在命令行上指定的顺序合并文件。有关使用的更多信息,请参见 docker-compose命令参考-f。 使用多个配置文件时,必须确保文件中的所有路径都相对于基本的Compose文件(用指定的第算核一个Compose文件-f)。这是必需的,因为替代文件不一定是有效的撰写文件。替代文件可以包含一些小的配置片段。跟踪服务的哪个片段相对于哪个路径是困难且令人困惑的,因此为了使路径更易于理解,必须相对于基本文件定义所有路径。 用例示例 在本节中,有两个常见的用例,用于多个Compose文件:针对不同的环境更改Compose应用程序,以及针对Compose应用程序运行管理心技任务。 不同的环境 多个文件的常见用例是将开发Compose应用程序更改为生产环境(可能是生产,演示或CI)。为了支持这些差异,您可以将Compose配置拆分为几个不同的文件: 从定义服务规范配置的基本文件开始。 docker-compose.yml web: image: example/my_web_app:latest &术Dnbsp; depends_on: - db - cache db: image: postgres:latest cache: &nbsocp; image: redis:latest 在此示例中,开发配置将一些端口暴露给主机,将我们的代码作为卷安装,并构建Web映像。 docker-compose.override.yml web: build: . volumes: - '.:/kecode' ports: - 8883:80 environment: DEBUG: 'true' db: command: '-d' r教 ports: - 5432:5432 cache: ports: - 6379:6379 运行时,docker-compose up它会自动读取覆盖。 现在,很高兴在生产环境中使用此Compose应用程序程:。因此,请创建另一个替代文件(该文件可以存储在其他git repo中,也可以由其他团队进行管理)。 docker-compose.prod.yml web: ports: - 80:80 environment: &ndobsp; PRODUCTION: 'true' cache: environment: TTL: '500' 要使用此生产Compose文件进行部署,您可以运行 docker-compose -f docker-cockmpose.yml -f docker-compose.prod.yml up -d 该部署使用配置中的所有三个服务 docker-compose.yml和docker-compose.prod.yml(但不是在开发配置docker-compose.override.yml)。 有关生产中撰写的更多信息,请参见生产。 行政任务 另一个常见用例是针对Compose应用程序中的一个er或多个服务运行临时任务或管理任务。本示例演示了如何运行数据库备份。 从docker-compose.yml开始。 web: image: example/my_web_app:latest depends_on: &n-cbsp; - db db: image: postgres:latest 在docker-compose.admin.yml中添加新服务以运行数据库导出或备份。 dbadmin: build: database_admin/ depends_on: &nbsomp; - db 要开始正常的环境运行docker-compose up -d。要运行数据库备份,请同时包含docker-compose.admin.yml。 docker-compose -f docker-compose.yml -f docker-compose.admin.yml \ run dbadmin db-backup
- 最近发表
- 随机阅读
-
- 谷歌发布最新零样本学习看图说话模型,多类型任务直接上手
- 标签: 乔路铭科技 比亚迪 吉利 汽车饰件
- 斑马智行震撼发布!全球首个全模态 AI 大模型实车方案引领汽车智能化潮流
- 标签: 腾讯云
- 微软推出全新 Microsoft 365 Premium,AI 功能与办公工具完美结合
- 标签: 苹果 蒂姆·库克 约翰·特努斯 Apple Watch
- 云工程师应该学习的5种编程语言
- 谷歌和脸书在美面临的五起反垄断诉讼:规模和关键指控分别为何
- 标签: 奥动 换电 上海电巴 V2S2G
- 标签: 网易云音乐 黑胶VIP 不正当竞争 88VIP
- 索尼将对人工智能产品进行伦理审查
- 标签: 美团 小象超市 美团无人机 鸭觅
- 标签: 新茶饮 2025行业盘点
- 深度伪造技术再现乱象,OpenAI 新工具 Sora 引发关注
- 标签: 华为 Mate80ProMax WWDC26 影石创新
- 蚂蚁集团子公司入股易碳数科 后者为工业碳数据云计算公司
- 云计算开发:Python练习实例-使用按位取反~
- 蜀道集团发布国内首个车路协同高精度导航 阿里云提供技术支持
- 2000 亿次开放学习后,DeepMind 的智能体“成精”了
- 网宿科技宣布云计算业务EdgeRay爱捷云独立运营
- 搜索
-