我正在将Meteor应用程序中的一些管理/管理功能分解为另一个新的管理/管理功能,以减少客户端应用程序大小/帮助限制访问.我还在localhost和生产中单独安装了MongoDB.
我已经能够在不同的端口上运行每个应用程序,并在启动应用程序时连接到数据库传递环境变量:
# App 1
MONGO_URL=mongodb://localhost:27107/appDB meteor
# App 2
MONGO_URL=mongodb://localhost:27107/appDB meteor --port 4000
Run Code Online (Sandbox Code Playgroud)
当然,我想settings.json在项目根目录中使用这些变量而不是必须指定它们(这里是settings.jsonApp 2):
{
"env": {
"PORT": 4000,
"MONGO_URL": "mongodb://localhost:27017/appDB"
}
}
Run Code Online (Sandbox Code Playgroud)
并使用meteor run --settings settings.json传递这些变量.但是,Meteor将无法识别设置文件.我可能出错的任何想法?
更新1:
@Apendua很友好地告诉我,settings.json它还不支持这种行为.改为设置bash别名.
更新2: @AshHimself指出Galaxy可以以这种方式识别环境变量,但是如果在本地环境中工作,核心Meteor文档并不十分清楚.
我使用本地 MongoDB 和 bash 脚本运行 Meteor 应用程序。
转到 Meteor 项目目录并在命令行 (BASH) 中写入以下内容:
echo 'MONGO_URL=mongodb://localhost:27017/meteorprojectname meteor run' > run.sh
Run Code Online (Sandbox Code Playgroud)
更改脚本的权限,以便无需 sudo 即可运行它:
sudo chmod 777 run.sh
Run Code Online (Sandbox Code Playgroud)
现在你可以使用命令运行你的项目:
./run.sh
Run Code Online (Sandbox Code Playgroud)
更多信息:http://meteor.hromnik.com/blog/meteor-run-without-creating-local-mongo-database
| 归档时间: |
|
| 查看次数: |
8120 次 |
| 最近记录: |