流星定制mongodb在开发期间

Aks*_*hat 24 mongodb meteor

我如何使用(实时运行)MongoDB开发另一个流星应用程序?我尝试修改(.meteor/server/server.js)并MONGO_URL在运行前指定无效meteor.

这不使用捆绑的MongoDB,它必须是一个单独的/自定义的(基本上是另一个流星实例).

这可以使用deploy方法完成,但meteor run在开发期间的正常情况如何?

更新:这确实有效,但客户端实现似乎有点毛躁

Bla*_*oat 30

非官方流星常见问题解答中所述,您可以使用MONGO_URL设置为所需实例的环境变量来调用Meteor :

MONGO_URL=mongodb://localhost:27017 meteor
Run Code Online (Sandbox Code Playgroud)

如果您的MongoDB处理多个数据库,您可以通过将其附加到URL来指明要使用的数据库:

MONGO_URL=mongodb://localhost:27017/mydb meteor
Run Code Online (Sandbox Code Playgroud)

您甚至可以通过运行来阻止Meteor在开发中启动本地Mongo实例:

MONGO_URL=none meteor
Run Code Online (Sandbox Code Playgroud)

  • 有没有办法将变量存储在项目的某个位置?总是输入"MONGO_URL = ..."来旋转流星似乎很愚蠢.如果只是在使用"流星跑"时以某种方式拾取它会很好.(我知道,第一个世界问题..) (2认同)
  • @archiehicox没有必要.只需将该env变量放在用于用户范围传播的`〜/ .profile`文件中,或放在`/ etc/environment`中用于系统范围的传播. (2认同)
  • @Shehi那是一个好方法.你是对的,它不是特定于项目的. (2认同)

kon*_*rad 10

我发现你不应该忘记指定要连接的数据库.就我而言,我希望第二个Meteor实例从第一个实例连接到开发MongoDB服务器.

Meteor使用HTTP端口+2进行开发MongoDB和数据库'meteor',因此启动第二台服务器的正确方法是:

MONGO_URL=mongodb://localhost:3002/meteor meteor --port=3800
Run Code Online (Sandbox Code Playgroud)

  • 它实际上是HTTP端口+1(至少现在是).您可以通过执行`meteor mongo`调用来验证这一点,以连接到默认数据库.所以默认数据库`mongodb:// localhost:3001/meteor` (2认同)