您好,我从昨天开始就是 Discourse 用户,但使用提供的代码一直无法安装插件,因为它总是显示以下错误:
(未知):在第 10 行第 1 列解析块映射时未找到预期的键 -e LANG=en_US.UTF-8
YAML 语法错误。请检查您的 containers/*.yml 配置文件。
但是,我设法安装了至少 1 个插件,使用了第一个基础代码右侧的代码:
&& sudo -E -u discourse git clone GitHub - discourse/discourse-solved: Allow accepted answers on topics
但是之后我无法再安装更多插件,因为该错误总是出现。
值得注意的是,我的安装是西班牙语的,我尝试将 en_US 更改为 es_ES,但问题也没有解决。
1 个赞
Firepup650
(Firepup Sixfifty)
2
您能否分享一下您的 after_code 代码块的片段?yaml 对空格非常敏感,您可能不小心缩进了不该缩进的行。
4 个赞
正如 Fireup 所建议的,请确保您没有为缩进添加或删除额外的空格。
您可以使用类似 https://yamlchecker.com/ 的工具来检查一切是否正确。 
2 个赞
您的行应与上面一行的缩进级别相同。例如:
cmd:
- git clone...
- git clone...
5 个赞
嘿朋友,非常感谢。有了那个网站,我解决了问题,那个网站以后绝对会是我的好朋友。
4 个赞
从您之前发布的这张图片来看:
您还需要遵循第一个原始行的格式,如这里所述:
所以您的可能需要看起来像这样:
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/discourse/docker_manager.git
- git clone https://github.com/discourse/discourse-akismet.git
- git clone https://github.com/discourse/discourse-whos-online.git
4 个赞
wal
9
只是想为这个话题补充一点,如果你正在使用 VS Code,我强烈推荐安装一个名为 indent-rainbow 的扩展
名称:indent-rainbow
ID:oderwat.indent-rainbow
描述:使缩进更易于阅读
版本:8.3.1
发布者:oderwat
VS Marketplace 链接:indent-rainbow - Visual Studio Marketplace
看起来像这样
这使得在 YAML 文件中查看缩进变得更加容易。在 VS Code 中,你也应该使用快捷键,如 Cmd + [ 或 Cmd + ] 来增加或减少缩进。
哦,还忘了提一下,也要打开可见空格,那就是截图中可以看到的小灰点。
3 个赞