Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用单-f标志在**docker compose**中传递多个合成文件_Docker_Docker Compose - Fatal编程技术网

使用单-f标志在**docker compose**中传递多个合成文件

使用单-f标志在**docker compose**中传递多个合成文件,docker,docker-compose,Docker,Docker Compose,这里是Docker noob 我在项目根目录下有一个docker目录。它包含一些docker compose文件,例如,docker compose-{1..5}.yml。我想运行docker compose up(注意:不是docker compose)。搜索docker文档,所以,在Internet上,我能找到的只是运行的引用 $project\u root/docker:docker-compose-f docker-compose-1.yml-f docker-compose-2.yml

这里是Docker noob

我在项目根目录下有一个docker目录。它包含一些docker compose文件,例如,
docker compose-{1..5}.yml
。我想运行
docker compose up
(注意:不是
docker compose
)。搜索docker文档,所以,在Internet上,我能找到的只是运行的引用

$project\u root/docker:docker-compose-f docker-compose-1.yml-f docker-compose-2.yml-f docker-compose-2.yml up
但是,在尝试帮助文档时,docker compose显示

$:docker compose--帮助
用法:docker compose[选项]命令
Docker Compose
选项:
--ansi字符串控制何时打印ansi控制字符(“从不”|“始终”|“自动”)(默认为“自动”)
--环境文件字符串指定备用环境文件。
-f、 --文件字符串数组组合配置文件
--profile stringArray指定要启用的配置文件
--项目目录字符串指定备用工作目录
(默认值:合成文件的路径)
-p、 --项目名称字符串项目名称
命令:
生成或重建服务
.
.
.
创建并启动容器
有关命令的详细信息,请运行“docker compose COMMAND--help”。
我的查询是

如何使用单个
-f
标志一次性将多个文件传递给
docker compose
,如使用
stringArray
文档中所述?格式是什么

我试过了,但没有成功:

$:docker compose-f“file1.yml”“file2.yml”up#no
$:docker compose-f[“file1.yml”“file2.yml”]向上#否
$:docker compose-f[“file1.yml”,“file2.yml”]向上#否
$:docker compose-f{“file1.yml”“file2.yml”}up#nope
$:docker compose-f(“file1.yml”“file2.yml”)向上#否
#以及它们的一些其他组合。
编辑#1:

我已经检查了这个,但它没有回答我的问题。我特别希望使用一个
-f
标志将多个字符串值(我的合成文件路径)传递给命令
docker compose
,就像-hey compose,我得到了这些文件,我希望您运行这些文件,而不是运行这个,运行这个,运行这个

现在我搞不清楚这是否可能,或者我必须为每个文件使用多个
-f
一个。但是帮助医生不应该提到

用法:docker compose[OPTIONS]命令
Docker Compose
选项:

-f、 --file stringArray Compose configuration files#您可以尝试使用
Compose_file
环境变量,同时在其中指定多个Compose文件:


COMPOSE\u file这是否回答了您的问题@维克多正是我的观点。不想使用前面提到的多个
-f
标志。根据doc,一个带有stringArray的
-f
标志应该可以工作,我正在寻找那个特定的模式。
docker-compose-f docker-compose.yml-f docker-compose-debug.yml up
与我预期的一样工作
docker-compose-f docker-compose.yml-f docker-compose-debug.yml up
,正如OP指出的那样,猜测stringArray的格式可能不起作用。使用COMPOSE_文件也没有产生预期的行为,我刚刚将docker COMPOSE更新为20.10.7(从20.10.6)多个docker compose文件现在似乎可以按预期使用
docker compose-f docker-compose.yml-f docker-compose-debug.yml up
。您不能使用单个
-f
选项。您必须为每个yaml引入一个新的。这样您根本不需要使用
-f
选项。谢谢@Victor。这项工作没问题。这是一个有效的解决办法,我必须同意。但我的问题是关于
-f
选项的使用。正如@Antoniopetrica指出的,根据文档,我认为您不能这样做:也许您正在寻找一个旧版本?