gpt4 book ai didi

docker-compose - docker 扩展字段解析器错误

转载 作者:行者123 更新时间:2023-12-04 04:32:41 25 4
gpt4 key购买 nike

刚看到新 extension fields 在 Docker Compose v3.4 中,并尝试将它与部分覆盖结合使用。

我的撰写文件如下所示:

version: '3.4'

x-environment:
&default-environment
- FOO=foo
- BAR=bar

services:
myservice:
[...]
environment:
<< : *default-environment
- BAZ=baz

当我尝试运行它时,我得到:
ERROR: yaml.parser.ParserError: while parsing a block mapping
expected <block end>, but found '-'

(对于我的“<<:*default-environment”)

有任何想法吗?

最佳答案

您正在尝试使用 merge key (为过时的 YAML 版本 1.1 指定)带有序列。这是行不通的,因为合并键不是新语法,而只是可用于映射的特殊键。

当解析器解析environment的内容时,它首先看到这一行:

<< : *default-environment

这一行包含一个隐式键, << ,以及该键的值 *default-environment .因此,解析器决定 environment 的值是一个映射。

现在在下一行,解析器遇到 - ,它是序列项的指示符。由于解析器当前正在解析映射,因此无法处理序列项指示符,因此会因错误而停止。

请注意,当前 YAML 版本 1.2 未定义合并键,并且将在即将发布的 1.3 版本中明确弃用。因此,一般不鼓励使用它。此外,正如您发现的那样,无法将它与序列一起使用。

关于docker-compose - docker 扩展字段解析器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47595406/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com