MongoDB on Vagrant via Port Forwarding问题

时间:2012-01-20 20:13:58

标签: mongodb vagrant getaddrinfo

我最近在运行Vagrant的CentOS 6 VM上安装了mongodb。

我将端口转发添加到Vagrantfile以转发mongo端口

config.vm.forward_port 27017, 127017

我将mongod配置为在服务器启动时自动启动,并确认服务按预期启动。

然而,当我从我的主机(而不是流浪汉)运行mongo localhost:127017时,我收到以下错误

MongoDB shell version: 1.8.2
connecting to: localhost:127017/test
Fri Jan 20 13:58:28 getaddrinfo("127.0.0.1") failed: nodename nor servname provided, or not known
Fri Jan 20 13:58:28 Error shell/mongo.js:81
exception: connect failed

任何想法?

4 个答案:

答案 0 :(得分:19)

您需要将mongod bind_ip设置为0.0.0.0而不是127.0.0.1(这是环回地址),以便所有接口都可以访问它。

答案 1 :(得分:9)

TCP端口号为16位无符号,表示最大值为65535(2 ^ 16),您正在尝试使用127017.

答案 2 :(得分:0)

你可以从vagrant ssh连接到mongo服务器吗?如果没有,您可能需要确保mongod正在运行。

您的mongodb.conf或mongod启动脚本中是否设置了ip_bind? (如果你这样做,你可能想要取消它 - 不确定流浪者的端口转发是如何工作的,但这可能是导致问题的原因。)

答案 3 :(得分:-3)

bind_ip to 0.0.0.0不起作用。试试bind_ip=127.0.0.1,10.0.0.25,这对我有用。