Kay*_*ast 2 json yaml amazon-web-services node.js amazon-elastic-beanstalk
我正在尝试在elasticbeanstalk上部署node.js应用程序(我在这里按照指示http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_nodejs_express.html),其中需要完成以下操作:
步骤6 [使用数据库更新应用程序]要点5.在本地计算机上,更新node-express/.ebextensions/static.config以向环境变量添加生产标志.
option_settings:
- namespace: aws:elasticbeanstalk:container:nodejs:staticfiles
option_name: /public
value: /public
- option_name: NODE_ENV
value: production
Run Code Online (Sandbox Code Playgroud)
但是当我部署时,我收到错误:
2014-08-29 10:15:11 ERROR The configuration file .ebextensions/static.config in application version git-5376bdbd807e9f181e6a907f996068b4075dffe0-1409278503377 contains invalid YAML or JSON. YAML exception: while parsing a block mapping
in "<reader>", line 1, column 1:
option_settings:
^
expected <block end>, but found BlockEntry
in "<reader>", line 5, column 1:
- option_name: NODE_ENV
^
, JSON exception: Unexpected character (o) at position 0.. Update the configuration file.
Run Code Online (Sandbox Code Playgroud)
我是新手,无法弄清楚如何纠正它.请帮忙.
您能指定用于创建此YAML文件的文本编辑器吗?你有机会在Windows机器上吗?我的第一个猜测是,配置文件中可能存在一些在文本编辑器中不可见的无效字符.如果您还没有这样做,可以仔细检查文件中是否有ctrl字符等.我通常在vim中检查这样的无效字符.
要检查的第二件事:YAML对空格和缩进很敏感,所以你能仔细检查你的缩进是否正确.我找到了这个在线网站来验证您的YAML格式.你可以尝试一下.
您也可以在配置文件中尝试以下JSON.只需用这个JSON替换YAML文件的内容就可以了.
{
"option_settings": [
{
"option_name": "/public",
"namespace": "aws:elasticbeanstalk:container:nodejs:staticfiles",
"value": "/public"
},
{
"option_name": "NODE_ENV",
"value": "production"
}
]
}
Run Code Online (Sandbox Code Playgroud)
如果没有无效字符且缩进正确,则文档中指定的YAML应该可以正常工作.现在你可以试试上面的json.
| 归档时间: |
|
| 查看次数: |
2649 次 |
| 最近记录: |