云计算核心技术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:术Dlatest
depends_on:
- db
- cache
db:
image: postgres:lateocst
cache:
image: redis:latest
在此示例中,开发配置将一些端口暴露给主机,将我们的代码作为卷安装,并构建Web映像。
docker-compose.override.yml
web:
build: .
volumes:
&nkebsp; - '.:/code'
ports:
- 8883:80
environment:
DEBUG: 'true'
db:
 r教;command: '-d'
ports:
- 5432:5432
cache:
ports:
- 6379:6379
运行时,docker-compose up它会自动读取覆盖。
现在,很高兴在生程:产环境中使用此Compose应用程序。因此,请创建另一个替代文件(该文件可以存储在其他git repo中,也可以由其他团队进行管理)。
docker-compose.prod.yml
web:
ports:
- 80:80
 do;environment:
PRODUCTION: 'true'
cache:
environment:
TTL: '500'
要使用此生产Compose文件进行部署,您可以运行
dockcker-compose -f docker-compose.yml -f docker-compose.prod.yml up -d
该部署使用配置中的所有三个服务 docker-compose.yml和docker-compose.prod.yml(但不是在开发配置docker-compose.override.yml)。
有关生产中撰写的更多信息,请参见生产。
行政任务
另一个常见用er例是针对Compose应用程序中的一个或多个服务运行临时任务或管理任务。本示例演示了如何运行数据库备份。
从docker-compose.yml开始。
web:
image: example/my_web_app:latest
depends_on:
&-cnbsp; - db
db:
image: postgres:latest
在docker-compose.admin.yml中添加新服务以运行数据库导出或备份。
dbadmin:
build: database_admin/
 om; depends_on:
- db
要开始正常的环境运行docker-compose up -d。要运行数据库备份,请同时包含docker-compose.admin.yml。
docker-compose -f docker-compose.yml -f docker-compose.admin.yml \
run dbpoadmin db-backup
- ·麦肯锡《2020年人工智能状况》报告:企业收入增长,AI真的出了力
- ·标签: 毛戈平 SKP 海港城 湖滨步行街
- ·假如重新设计Kubernetes
- ·标签: QuestMobile 抖音 小红书 哔哩哔哩
- ·京东云言犀将推出ChatJD 对标“产业版ChatGPT”
- ·#苹果公司将被俄罗斯罚1200万美元#上热搜 网友:国内也该罚
- ·吃了发苦的橙子怎么办
- ·标签: 腾讯 元宝 王者荣耀 AI
- ·云安全日报210112:思科安全设备和威胁防御软件发现执行任意代码漏洞,需要尽快升级
- ·标签: 宇树科技 人形机器人 出货量
- ·标签: 苹果 威马汽车 赛力斯 极氪
- ·谷歌推出新方法:训练数据量减少 1 万倍,提升模型精准度
- ·Facebook再次抨击苹果公司:希望欧盟新规为苹果设定界限
- ·云计算核心技术Docker教程:Docker使用卷持久化数据
- ·标签: XChat Mate80 微信鸿蒙版 华为
- ·运动会入场式音乐
- ·https://www.urmc.rochester.edu/news/search?q=必应快排【tg:seogoogle987】,bIp
- ·https://www2.ual.es/ProyectoLates/?s=必应快排【tg:seogoogle987】,m0l
- ·https://nicolazzi.it/en/?s=必应快排【tg:seogoogle987】,Iay
- ·https://www.signingsavvy.com/sentence/必应快排【tg:seogoogle987】,DmS
- ·https://www.so.com/s?ie=utf-8&src=360sou_home&_re=0&q=必应快排【tg:seogoogle987】,CO4
- ·https://www.vietnamconsulate-sf.org/?action=CHECK&s=必应快排【tg:seogoogle987】,ylf
- ·https://www.selfsufficientish.com/main/?s=必应快排【tg:seogoogle987】,Ib3
- ·https://www.prattlibrary.org/search?q=必应快排【tg:seogoogle987】,9kp
- ·https://www.remit.co.jp/vi/?s=必应快排【tg:seogoogle987】NPm
- ·https://www.msrenewal.com/search/必应快排【tg:seogoogle987】,Ad0
- ·如何面对繁杂的数据需求?
- ·标签: 纳芯微 模拟芯片 大基金三期 小米
- ·麦肯锡《2020年人工智能状况》报告:企业收入增长,AI真的出了力
- ·标签: OpenAI ChatGPT 人工智能 算力利润率
- ·云安全日报210805:思科企业路由器发现拒绝服务和命令注入漏洞,需要尽快升级
- ·OpenAI 发布 ChatGPT更新通知: 提升搜索功能,结果更准确
- ·亚马逊裁员 1.4 万,AI 与自动化迅速崛起
- ·美司法部起诉Facebook:招聘偏向临时签证持有人 歧视美国劳动者
- ·上海发布"AI+制造"实施方案,要求AI模型掌握物理规律和工业流程推理能力
- ·标签: 奇安信 财报 研发投入 政府补助
