Rtm*_*tmY 9 docker docker-compose
来自泊坞窗文档:
\n\n\n\n\nDocker Compose\xe2\x80\x99s extends关键字允许在不同文件甚至完全不同的项目之间共享通用配置。如果您有多个重用一组通用配置选项的服务,则扩展服务非常有用。使用扩展,您可以在一个地方定义一组通用的服务选项,并从任何地方引用它。
\n
由于某种原因,该功能 在版本 3 中被删除。
\n\n也发现了这个帖子,但它已经闲置了 2 年了。
\n\n我正在尝试在新版本中找到此功能的替代品。
想听听是否有人找到了替代品extends。
谢谢。
\nbug*_*bug 12
有两种方法可以实现您的需求,您可以决定使用其中一种或同时使用两种方法,因为它们的工作方式略有不同:
您可以在运行 docker compose 命令时指定多个 compose 文件,例如,您可以使用以下命令设置项目:
docker-compose -f config1.yml -f config2.yml up
Run Code Online (Sandbox Code Playgroud)
您还可以使用环境变量来指定您的文件:
COMPOSE_FILE=config1.yml:config2.yml docker-compose up
Run Code Online (Sandbox Code Playgroud)
发生的情况是 docker compose 创建一个配置,合并您在每个配置中定义的内容。
这里的文档展示了如何合并多个撰写文件。
config您还可以运行命令生成最终配置文件。
由于 docker compose 文件基本上是 YAML 文件,因此您可以利用 YAML 锚点来定义属性块并在配置的多个部分中重用它们。
例如:
version: '3'
common: &common
image: "myrepo/myimage"
restart: "unless-stopped"
volumes:
- "volume:/mnt/myvolume"
services:
service1:
<<: *common
ports:
- "5000:5000"
service2:
<<: *common
environment:
- MYENV: value
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2126 次 |
| 最近记录: |