MongoDB на Vagrant через порт переадресации
Я недавно установил mongodb на моей CentOS 6 VM, работающей на Vagrant.
Я добавил переадресацию портов в Vagrantfile для переадресации порта Монго
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 ответа
Номера портов TCP 16-битные без знака, что означает максимальное значение 65535 (2^16), и вы пытаетесь с 127017.
Вам необходимо установить mongod bind_ip в 0.0.0.0 вместо 127.0.0.1 (который является адресом обратной связи), чтобы все интерфейсы могли получить к нему доступ.
Можете ли вы подключиться к серверу Монго из vagrant ssh? Если нет, вы можете убедиться, что mongod работает.
У тебя есть ip_bind
установить в вашем mongodb.conf или скрипте запуска mongod? (Если вы это сделаете, вы можете отключить его - не совсем точно знаете, как работает перенаправление портов vagrant, но это может быть причиной проблемы.)
bind_ip to 0.0.0.0
не работает. Пытаться bind_ip=127.0.0.1,10.0.0.25
, that worked for me.