问题描述
位于C:\ Users \ USERNAME \ Documents \ meteor \ apps \ APPNAME.meteor \ local \ build \ programs \ server \ packages \ mongo.js的mongo.js第3476行说:
var mongoUrl = process.env.MONGO_URL;
console.log('Connection url => ',process.env.MONGO_URL);
打印出来
Connection url => mongodb://127.0.0.1:3001/meteor
在我的Windows 10环境变量名称/值中哪里没有MONTO_URL的条目,但是PATH中有C:\Program Files\MongoDB\Server\4.2\bin
,这表示此Windows 10上安装了mongodb。
mongod在此窗口10计算机上作为服务运行,因此在打开的第一个cmd终端中,我可以键入'mongo'并获取mongo shell,
如何使用此mongo服务器代替流星mongodb?
https://docs.meteor.com/environment-variables.html#MONGO-URL说: MONGO_URL =“ mongodb:// user:password@myserver.com:10139”
这是否意味着以下内容? MONGO_URL =“ mongodb:// windowsUsername:windowsUserPassword@127.0.0.1:27017 / my_db_name”
我有一个package.json,其中包含以下条目:
"scripts": {"start": "meteor run"}
我应该将其更改为
"scripts": {"start": "meteor run","meteor": "MONGO_URL="mongodb://windowsUsername:windowsUserPassword@127.0.0.1:27017/my_db_name" }
https://docs.npmjs.com/creating-a-package-json-file没有提供这种情况的示例。
关于运行该应用程序,链接https://docs.meteor.com/commandline.html#meteorrun说键入meteor
与meteor run
相同,那么是否不需要脚本行"start": "meteor run",
?>
我是否需要担心npm run meteor
,如此处所示
https://stackoverflow.com/a/35256627/5047454
谢谢
解决方法
在启动流星之前,您需要设置环境变量。如果要使用脚本条目执行此操作,则必须将其放在启动流星的位置,然后使用npm run start
:
"scripts": {
"start": "MONGO_URL=mongodb://windowsUsername:windowsUserPassword@127.0.0.1:27017/my_db_name meteor run"
}
我不在Windows上使用流星,所以我不认识这第一手,但是从this answer看来,您需要使用:
cmd /C "set MONGO_URL=\"mongodb://windowsUsername:windowsUserPassword@127.0.0.1:27017/my_db_name\" && meteor"
我会尝试先使其工作,然后再使其工作,然后在package.json
的脚本中进行设置。