相关疑难解决方法(0)

如何使用METEOR_SETTINGS环境变量在AWS/EBS上配置Meteor

尝试在AWS/EBS(Amazon Web Services,Elastic Beanstalk)环境中设置Meteor.

Meteor开发运行可以传递命令行标志:--settings settings.json 其中settings.json 是包含服务器/客户端键/值配置的文件(作为格式正确的JSON).

Meteor的部署使用METEOR_SETTINGS环境变量,而不是在命令行中传递配置文件.如果提供的话,它应该包含一个json文档settings.json,例如:

$ METEOR_SETTINGS=$(cat settings.json)
$ echo $METEOR_SETTINGS
{ "public": { "s3path": "https://d2v4p3rms9rvi3.cloudfront.net" } }
Run Code Online (Sandbox Code Playgroud)

问题是当我METEOR_SETTINGS在EBS控制台中将值设置为此值时:

(截图)

AWS/EBS丢弃引号,转义斜杠(如屏幕截图所示),并发送Meteor:

{public:{s3path:https:\/\/d2v4p3rms9rvi3.cloudfront.net}}
Run Code Online (Sandbox Code Playgroud)

如节点启动错误所示:

-------------------------------------
/var/log/nodejs/nodejs.log
-------------------------------------
npm WARN deprecated backwards-incompatible changes made to `npm run-script` and
npm WARN deprecated semver behavior.

> meteor-dev-bundle@0.0.0 start /var/app/current
> node main.js


/var/app/current/programs/server/boot.js:283
}).run();
   ^
Error: METEOR_SETTINGS are not valid JSON: {public:{s3path:https:\/\/d2v4p3rms9rvi3.cloudfront.net}}
    at packages/meteor/packages/meteor.js:21:1
    at Package (packages/meteor/packages/meteor.js:42:1)
    at /var/app/current/programs/server/packages/meteor.js:1277:4
    at /var/app/current/programs/server/packages/meteor.js:1286:3
    at /var/app/current/programs/server/boot.js:242:10 …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services meteor amazon-elastic-beanstalk

8
推荐指数
1
解决办法
2390
查看次数