2014-11-08 109 views
3

我創建了一個縮放的nodejs應用程序並添加了mongodb,一切運行正常(使用環境變量從nodejs內部連接到mongodb)。現在我想從本地機器連接到數據庫,並且我無法在我的生活中工作。如何從本地客戶端連接到Openshift Mongodb(端口正在轉發)?

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直接複製。任何有這方面經驗的人?

+0

如果PC嘗試下載 「Mongovue」,並嘗試後連接到你的mogodb你做你的端口。使用這種方法我沒有問題。從那裏你可以進一步解決問題。 – 2014-11-09 00:23:00

回答

7

看起來要連接到錯誤的主機,你應該連接到本地主機這樣的:

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

2

RHC端口轉發-a [MYAPP]

當上述命令執行後,所有對localhost的請求,即127.0.0.1將被rhc tunnel轉發給遠程主機。

所以不要被迷惑,甚至你看到遠程主機,嘗試通過按Ctrl + C

連接到默認的本地主機的請求將被前頁到遠程服務器,直到您終止端口轉發

蒙戈-u管理-p [密碼] --host --port 127.0.0.1 65211 [DBNAME]

將解決您的問題

相關問題