2016-03-30 18 views
1

Seyrenインスタンスをローカルで実行しようとしましたが、ドッキングされたMongoDB imageを使用して行いたいと思います。私は、最新のドッキングウィンドウの画像を引っ張った後 は、私はそれを実行して、27017ポートを公開:行うにはドッキングされたMongoDBインスタンスに接続できません

docker run --name mongodb -v /data/db:/data/db -p 27017:27017 -d mongo 

次の事はseyren jarファイルをコンパイルし、それをいくつかの変数を渡すことです。 docker.localは/etc/hosts

java -jar seyren-1.3.0.jar GRAPHITE_URL=https://graphiteurl.io MONGO_URL=mongodb://docker.local:27017 

にドッキングウィンドウのツールボックスのIPにマッピングされた。しかし、私は、次のエラー頂けれ:

30/03/2016 13:58:02.643 [ローカルホスト-startStop-を58:12.661 [localhostの-startStop-1]

ERROR com.seyren - 1]

INFO com.seyren.mongo.MongoStoreは、我々が30/03/2016 13を必要とするすべてのインデックスを持っていることを確認します.mongo.MongoSt ore - Mongo 索引をブートストラップ中に失敗しました。 この問題が発生した場合は、 という名前のチェックが2つあり、試したインデックスに違反して にを追加している可能性があります。クラッシュを取り除いて問題を修正してください。それ以外のものが なら、Githubにお知らせください!

com.mongodb.MongoTimeoutException:AnyServerSelector {}と一致するサーバーを待機中に が待機している間に、10000ミリ秒後にタイムアウトしました。 クライアント状態のクライアントビューは{type = Unknown、servers = [{address = localhost:27017、 type = Unknown、state = Connecting、 例外= {com.mongodb.MongoException $ネットワーク: ソケットを開く例外}です。引き起こされる{java.net.ConnectException:接続が拒否されました}}]

私は私がここで欠場していますか?

EDIT

私はseyren jarファイルをコンパイルすること。私は確かに私のmongoインスタンスで作成されたseyrenデータベースを持っています...接続が確立されている必要があります。

+0

あなたが実際に起動しているMongoDBインスタンスは、* localhost *で実際にリッスンしていますか?さらにポイント:Docker Toolboxなどを使用していますか? 'netstat -lntp |の出力を追加してください。 grep 27017 '(またはMacの場合は' lsof -n -i:27017 | grep LISTEN')を実行します。 – ThatsNinja

+0

地獄。私はあなたが主な問題を指摘したと思います。私は確かにドッカーのツールボックスを使用します。 MACでコマンドを実行すると(私はドッカーツールボックスを使用します)、私は何も得られません。私のVM(Ubuntu 14.04)に入っているとき、ポートはリッスンしています。 しかし、ポートがリスニング(VM)している場合でも、seyrenデータベースはmongoインスタンスで作成されますが、動作しません。また、Mac(toolbox)内のmongoインスタンスに接続するにはどうすればいいですか? – Mornor

+0

vmを稼働しているdockerホストのipを使用する必要があります。あなたは "docker-machine ip default"を実行してipを見つけることができます。 mongodbはそのIPアドレスでポート27017をリッスンしています – lamirap

答えて

3

私はあなたがMac上でドッカーツールボックスを使用していると理解していました。 Dockerツールボックスがローカルホストで実行されていない(VBox仮想マシンのインスタンスで実行中)。そして、あなたはlocalhostの代わりにこのマシンのIPを使うべきです。あなたはターミナルでdocker-machine envコマンドを使ってそれを得ることができます。 IPのDOCKER_HOSTのenv変数は、mongoDBインスタンスホストのIPになります。

+0

' docker-machine ip default'はデフォルトのDocker Toolbox Docker MachineインスタンスのIPだけを返します。 – ThatsNinja

+0

私はこれをしていましたが、私はまだ同じエラーがあります( 'Mongoインデックスのブートストラップに失敗し、' Connection refused') – Mornor

+1

それはseyrenの問題です。あなたはそれをここで追跡することができますhttps://github.com/scobal/seyren/issues/354 – Cortwave

0

解決策が見つかりました。これは唯一の実行可能なツールなので、mongo:2.7イメージを使用する必要がありました。

関連する問題