所以在我的本地机器上,当我启动Meteor应用程序时,我传入一个json文件来指定这样的应用程序设置
meteor --settings local.json
这似乎有效。但是,正如meteor.com文档(http://docs.meteor.com/#deploying)中所述,在您自己的基础架构中部署应用程序时,您需要使用“meteor bundle”捆绑您的应用程序,然后将其作为节点实例运行,如此
PORT=3000 MONGO_URL=mongodb://localhost:27017/myapp node bundle/main.js
我能够做到这一点,并在我的服务器上部署了应用程序。但是,我不确定我是如何用我的配置设置传递json文件的。
PORT=3000 MONGO_URL=mongodb://localhost:27017/myapp --settings prod.json node bundle/main.js
PORT=3000 MONGO_URL=mongodb://localhost:27017/myapp node bundle/main.js --settings prod.json
--settings
是Meteor的东西还是Node的东西?如果是后者,我该如何传入我的JSON文件?
答案 0 :(得分:11)
--settings
是一个流星的东西。
在制作中,您可以使用环境变量,因为--settings
适用于meteor run
或仅meteor
来自文档:
Meteor.settings包含特定于部署的配置选项。您可以通过将--settings选项(包含JSON数据的文件)传递给meteor run或meteor deploy,或者将服务器进程的METEOR_SETTINGS环境变量设置为JSON字符串来初始化设置
这样的事情可以起作用:
PORT=3000 MONGO_URL=mongodb://localhost:27017/myapp METEOR_SETTINGS=$(cat prod.json) node bundle/main.js
答案 1 :(得分:0)
您还可以创建一个启动脚本,如下所示:
https://www.eventedmind.com/classes/setting-up-meteor-projects/a-sample-start-script
它的代码在这里:https://github.com/cmather/meteor-start。
这样的脚本也可以轻松地使用不同的环境进行开发和生产。