2016-08-24 20 views
0

私はsails.jsフレームワークを使用してnode.jsアプリケーションを持っており、このアプリケーションをbluemixクラウドサービスにデプロイしようとしています。Sails.js bluemixのMongoDBが動作しない

私はcompose.ioでのMongoDBインスタンスをしようとしていますし、私は私のlocal.jsファイルではなく、標準的な接続形態があります。それが動作しない

connectMongo: { 
adapter: 'sails-mongo', 
host: 'sl-eu-lon-2-portal.1.dblayer.com', 
port: 10438, 
database: 'some-db' 
} 

を。それは展開していません。これは、データベースが であることはもちろん、意味

ERR error: A hook (`orm`) failed to load! 
ERR error: Error: Failed to connect to MongoDB. 

しかし、私はないよと妙にそれはまた、任意の意味をなさないこの

ERR { [MongoError: connect ECONNREFUSED 127.0.0.1:27017] 

を与える: それが与えるエラーがあります上記のように、私は10438を使用しています。 アプリケーションはローカルで実行されていますので、bluemixの設定を介してデータベースに接続する際に何か不足していますが、27017のポップアップがどうなっているのか理解できません。

+1

また、この質問をCompose.ioサポートに直接問い合わせてみることもできます。彼らはすべてのユーザーに電子メールベースのサポートを提供し、ポートの問題を明らかにする可能性があります。 https://help.compose.com/docs/components-email-support/ – ralphearle

+0

これは実際には構成上の問題ではないと感じています。私はMongoDB用の別のソースを使用していても同じ問題を抱えています – user25291

+0

MongoDBに接続しているコードを追加できますか?問題はポート番号だけでなく、ローカルのMongoDB - 127.0.0.1に接続しようとしているので、あなたのコードはあなたが提供したconnectMongo情報を読んでいないことに注意してください。 –

答えて

0

設定が正しいようです。私のセットアップと比較:

ENV/production.js

connections: { 
    prodMongoDb: { 
     adapter: 'sails-mongo', 
     host: process.env.MONGO_PORT_27017_TCP_ADDR, 
     port: 27017, 
     database: 'my_database' 
    } 
}, 

models: { 
    connection: 'prodMongoDb', 
    migrate: 'safe' 
} 

ENV/

connections: { 
    devMongoDb: { 
     adapter: 'sails-mongo', 
     host: 'localhost', 
     port: 27017, 
     database: 'my_database' 
    } 
}, 

models: { 
    connection: 'devMongoDb', 
    migrate: 'safe' 
} 

あなたはポート10438を指定するが、取得しているという事実をdevelopment.js 27017に関するエラーは、帆があなたの接続定義を拾っていないことを意味します。あなたのアプリをどうやって始めますか?

このようにそれを起動する:

npm start NODE_ENV="production" 

は帆は、生産の設定を拾うようになります。

関連する問題