Как подключиться к Openshift Mongodb с локального клиента (порты переадресовываются)?

Я создал масштабированное приложение nodejs и добавил mongodb, все работает нормально (подключение к mongodb из nodejs с помощью переменных среды). Теперь я хочу подключиться к БД с моего локального компьютера, и я не могу заставить его работать на всю жизнь.

rhc port-forward -a [myapp] 

возвращает:

Forwarding ports ...
Address already in use - bind(2) while forwarding port 8080. Trying local port 8081
Address already in use - bind(2) while forwarding port 8080. Trying local port 8081
Address already in use - bind(2) while forwarding port 8081. Trying local port 8082

To connect to a service running on OpenShift, use the Local address

Service Local                OpenShift
------- --------------- ---- -------------------------------------------------
haproxy 127.0.0.1:8080   =>  127.2.114.130:8080
haproxy 127.0.0.1:8081   =>  127.2.114.131:8080
mongodb 127.0.0.1:65211  =>  [mysubdomain].rhcloud.com:65211
node    127.0.0.1:8082   =>  127.2.114.129:8080

Насколько я могу судить, это выглядит неплохо, но я не уверен Address already in use часть.

При попытке подключиться с моей машины через

mongo -u admin -p [password] --host [mysubdomain].rhcloud.com --port 65211 [dbname]

Я просто получаю

Error: couldn't connect to server [mysubdomain].rhcloud.com:65211 (54.197.84.134), connection attempt failed at src/mongo/shell/mongo.js:148
exception: connect failed

Так что похоже, что этот порт недоступен (ping на домене работает). Я скопировал прямо с rhc port-forward, У кого-нибудь есть опыт решения этой проблемы?

2 ответа

Похоже, вы подключаетесь не к тому хосту, вы должны подключиться к локальному хосту следующим образом:

mongo -u admin -p [password] --host 127.0.0.1 --port 65211 [dbname]

rhc port-forward -a [myapp]

после выполнения вышеуказанной команды все запросы к localhost, т.е. 127.0.0.1, будут перенаправлены на удаленный хост через туннель rhc.

так что не смущайтесь, даже если вы видите удаленный хост, попробуйте подключиться к локальному хосту, по умолчанию запросы будут пересылаться на удаленный сервер до тех пор, пока вы не прекратите переадресацию порта, нажав ctrl + c

mongo -u admin -p [пароль] --host 127.0.0.1 --port 65211 [имя_базы]

решит вашу проблему

Другие вопросы по тегам