docker 扩展字段解析器错误

2024-01-15

我刚看到新的extension fields https://docs.docker.com/compose/compose-file/#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 '-'

(对于我的行“")

有任何想法吗?


您正在尝试使用合并键 http://yaml.org/type/merge.html(为过时的 YAML 版本 1.1 指定)带有序列。这是行不通的,因为合并键不是新语法,而只是可以在映射中使用的特殊键。

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

<< : *default-environment

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

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

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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

docker 扩展字段解析器错误 的相关文章

随机推荐

  • 如何在 Java 中读取也具有空值的 Excel 单元格...?

    我正在使用 Apache POI 3 6 我有一个专栏是blank 我希望能够阅读它 然后转到下一栏 即使我能解决NullPointerException问题是我无法到达下一个牢房 这是我的代码片段 HSSFCell cell row ge
  • 从 Java 程序运行 SQL 文件脚本

    我有一组 SQL 文件可以转换我的原始数据集 目前 我打开每个文件并执行它 如何执行 Java 程序中的每个文件 目标是使这个过程更加自动化 我想做类似的事情SqlScript execute myScript sql NOTE这些 SQL
  • 为什么我们不能在堆栈上分配动态内存?

    在堆栈上分配内容非常棒 因为我们有 RAII 并且不必担心内存泄漏等问题 然而有时我们必须在堆上分配 如果数据真的很大 推荐 因为堆栈很小 如果要分配的数据的大小仅在运行时才知道 动态分配 两个问题 为什么我们不能分配动态内存 即大小为 仅
  • 节点 process.env 变量为空

    我正在构建我的第一个 Express 应用程序 它需要使用理想情况下保持安全的 API 密钥与 API 进行交互 所以我想遵循一个基本模式 将密钥 以及任何未来的环境变量 保存在一个 gitignored env根目录下的文件 为了不重新发
  • 如何绘制 (x,y,z)

    Is there anyway to plot x from x textbox y from y textbox and z from z textbox in vb form It is windows application I ha
  • 将文件名读入数组

    我想获取文件列表 然后将结果读入一个数组 其中每个数组元素对应一个文件名 这可能吗 不要使用ls it s 不打算 https mywiki wooledge org ParsingLs以此目的 使用通配符 shopt s nullglob
  • 如何使用findText不区分大小写?

    我尝试在 Google 文档中搜索字符串 默认情况下findText区分大小写 我该如何使用它不区分大小写 该参考文献称 使用正则表达式在元素内容中搜索指定的文本模式 这就是我尝试过的 function search string var
  • MongoDB C++,如何在插入时添加 ISODate 值

    这是关于新的 MongoDB C 驱动程序 不是旧版驱动程序 我可以这样插入文档 value Value document lt lt Key lt lt Value lt
  • .NET 中的字符串转换

    为什么 net中有这么多方法可以转换为字符串 我见过的方法是 ToString Convert ToString 和 string 有什么不同 Convert ToString obj 将指定值转换为其等效的字符串表示形式 将返回Strin
  • 调整 GC 以进行大型缓存刷新

    我的内存中有一个很大的缓存 使用com google common cache LoadingCache 使用 Scheduler 会在 10 分钟后刷新 如下所示 ScheduledExecutorService refresher Ex
  • Mac OS X 10.9 - 设置永久环境变量

    如何在 Mac OS X 10 9 中设置永久环境变量 即每次启动新终端会话时不需要导出的环境变量 我找到了许多关于修改我的答案 bash profile and profile然而 这两种选择似乎都不是永久的解决方案 只是暂时的 我试图设
  • 我应该将 SQL 查询放在 Rails 中的哪里?

    我应该在 Rails 中的什么位置放置 SQL 查询的最佳实践是什么 我是否应该在模型中创建方法 例如 find all public items 其中我在所有条件下使用查找方法 然后在控制器中使用它们 就像这样 我将所有查询都放在一个地方
  • 为什么占位符伪元素上的转换属性在 Chrome 中有效?

    我正在闲逛 placeholder当我注意到一些奇怪的事情时 Codepen Chrome 59 0 3071 上的伪元素 请看我的JSFiddle https jsfiddle net 4ct6zkaw 简而言之 此 CSS 不应启用 p
  • 红外 LED 跟踪:使用 OpenCV 跟踪 x、y、z 位置

    我正在寻找一种方法来解决我遇到的计算机视觉问题 我有工作跟踪系统 4 8个摄像头 给出红外 LED 的 x y z 每个 LED 传输独特的 8 位信号 跟踪系统价格昂贵 而且界面对于我们的用户来说太难使用 我想用我自己的 OpenCV 实
  • 按钮垂直对齐引导程序

    我正在尝试以简单的形式对齐按钮 我这样做了 div class panel panel default div class panel heading teste div div class panel body div class row
  • 将应用程序提交到使用 Firebase 的 App Store

    我有一个关于在使用 Firebase 时向应用程序商店提交应用程序的快速问题 我想知道 Firebase 方面是否需要做任何事情才能使数据库可供任何人使用 或者我可以只完成提交应用程序的正常过程并假设数据库将为测试人员或下载该应用程序的任何
  • std::includes 实际上做了什么?

    From 标准 https timsong cpp github io cppwp n4659 alg set operations includes std includes 返回 true if first2 last2 为空或者范围内
  • AVL树如何在插入时平衡树

    我想为 avl 树创建一个插入函数 然而 插入函数必须是递归的并且必须是平衡的 我有一个将树向左旋转的方法 PivoterAGauche 和一个将树向右旋转的方法 PivoterADroite Pivot left Private Func
  • 与 C 预处理器“字符串化”相反

    当使用 C 预处理器时 可以像这样对宏参数进行字符串化 define TO STRING x a string with x 所以使用时 结果如下 TO STRING test 将扩展到 a string with test 有什么办法可以
  • docker 扩展字段解析器错误

    我刚看到新的extension fields https docs docker com compose compose file extension fields在 Docker Compose v3 4 中 并尝试将其与部分覆盖结合使用