【发布时间】:2014-01-27 10:20:45
【问题描述】:
而不是使用标志--settings settings.json 启动 Meteor
mrt --settings settings.json
是否可以在启动时通过运行自动定义Meteor.Settings
mrt
【问题讨论】:
-
现在怎么样了?
标签: javascript node.js meteor
而不是使用标志--settings settings.json 启动 Meteor
mrt --settings settings.json
是否可以在启动时通过运行自动定义Meteor.Settings
mrt
【问题讨论】:
标签: javascript node.js meteor
现在命令应该是meteor(不再是mrt):
meteor --settings settings.json
要自动加载设置文件,我喜欢“The Meteor Chef”中建议的方法,该方法利用了npm:
在项目根目录下创建文件package.json:
{
"name": "my-app",
"version": "1.0.0",
"scripts": {
"start": "meteor --settings settings.json"
}
}
我们可以用以下方式启动流星:
npm start
开发/生产
也可以有两个或多个脚本用于两个或多个设置:
{
"name": "my-app",
"version": "1.0.0",
"scripts": {
"meteor:dev": "meteor --settings settings-dev.json",
"meteor:prod": "meteor --settings settings-prod.json"
}
}
然后:
npm run meteor:dev
或
npm run meteor:prod
(注意这里我们必须添加run 命令,“特殊”脚本start 不需要)
【讨论】:
npm start 方法很有趣!是否也可以使用这种方法导出变量MONGO_URL和MONGO_OPLOG_URL?
meteor:dev 和meteor:prod 值中使用env set MONGO_URL 来完成?
env MONGO_URL="<some value>" MONGO_OPLOG_URL="<another value>" meteor --settings settings.json
mrt 替换为 meteor)。
如果您不想摆弄别名,可以在特定项目的根目录中创建一个 bash 脚本,如下所示:
dev.sh:
#!/bin/bash
meteor --settings ./config/development/settings.json
然后从流星项目目录运行它:
./dev.sh
如果您收到-bash: ./dev.sh: Permission denied,请执行以下操作:
chmod +x ./dev.sh
如果您使用其他服务,您可以像这样在流星之前启动它们:
#!/bin/bash
sudo service elasticsearch start
meteor --settings ./config/development/settings.json
【讨论】:
对于开发人员,请使用alias
alias mrt='mrt --settings settings.json'
或
alias mrts='mrt --settings settings.json'
用unalias mrts删除它
如果您希望它是永久的,请将其放入~/.bashrc 或~/.bash_profile
或者,meteor 接受一个环境变量(对生产有用)
METEOR_SETTINGS = `cat path/to/settings.json`
export METEOR_SETTINGS
【讨论】: