如何多次指定Dev Container的homebrew-package特性?
解决DevContainers中重复使用Homebrew包特性安装多个包的问题
你遇到的问题根源是JSON对象的键具有唯一性,重复声明同一个特性的键会导致后续配置被前面的覆盖,最终只有第一个包会被安装。
解决方法是将features从对象格式改为数组格式,数组中每个元素单独配置一个homebrew-package特性实例,就能实现多次调用特性安装多个包:
{ "features": [ { "id": "ghcr.io/devcontainers-contrib/features/homebrew-package:1", "options": { "package": "detect-secrets" } }, { "id": "ghcr.io/devcontainers-contrib/features/homebrew-package:1", "options": { "package": "markdownlint-cli" } } ] }
另外,你也可以尝试直接在package参数中用空格分隔多个包名(部分包管理类特性支持这种写法),示例如下:
{ "features": { "ghcr.io/devcontainers-contrib/features/homebrew-package:1": { "package": "detect-secrets markdownlint-cli" } } }
不过这种方式需要确认该特性是否支持批量传入包名,若官方说明仅支持单个包,还是优先使用数组格式更可靠。
内容的提问来源于stack exchange,提问作者MrSimonEmms
相关产品推荐
相关产品推荐

