大家好我想找到一种方法将我的mongo数据库移到其外的vagrant中。我正在阅读这个论坛的一些帖子,但它们与postgres和mysql有关。
当我运行npm start时,这是我在package.json中的代码
"start": "MONGODB=mongodb://localhost:27017....
所以问题是数据库将保存在虚拟机localhost中,因此,当它运行时,它将无法在VM外部访问。如何更改此localhost路径以进行外部通信?
答案 0 :(得分:0)
它不是流浪者或其他服务器。
db位置文件在/etc/mongodb.conf
中指定。默认情况下,db保存在/data/db
所以问题是数据库将保存在虚拟机本地主机中,因此,当它运行时,它无法在VM外部访问。如何更改此localhost路径以进行外部通信?
如果您希望可以从主机访问数据库,则需要将vaghost VM的IP替换为localhost(如果您指定了私有IP),或者更好地使用0.0.0.0
,以便可以从所有网络访问接口
答案 1 :(得分:0)
我做到了,这个链接给了我答案:Vagrant reverse port forwarding?
似乎默认情况下mongo将位于vagrant之外的10.0.2.2中,所以如果我在vagrant中运行:mongo 10.0.2.2:27017它连接到vagrant之外的数据库。
因此,这是我需要在package.json中运行npm start ...
"start": "MONGODB=mongodb://10.0.2.2:27017/