読者です 読者をやめる 読者になる 読者になる

iyuichiの私的開発ログ

渋谷で働くWebエンジニアのログ. Java, Android, iOS, Docker, GCP, AWS, ゲーム開発

macbook airでMongoDBを使う

websocket

Socket.IOでチャットを作る開発を地味に進めています。

現状のソースはここ

で、ルームのやポストされた情報を保存しておく部分を実装するにあたってはMongoDBを使ってみようと思っていてこれから環境つくります。

MongoDBをインストール

普通にbrewでインストールしてもよいのですが、dockerを使うとローカルの環境を汚さずに簡単に使い始めることができそうなのでdocker使ってみます。

といっても、boot2dockerとdockerのインストールは済んでいるのでMongoDBのコンテナ作りから。

docker pull dockerfile/mongodb

実はコンテナ公開されているのでこれだけです。

使ってみる

コンテナを起動します。

docker run -d -p 27017:27017 --name mongodb dockerfile/mongodb

永続ファイルはコンテナ外に置いたりとかやったほうがいいかもしれませんが、ローカルの開発環境なんでこれで問題なし。

さっそく繋いでみようと思ったらエラーが。。。

warning: Failed to connect to 127.0.0.1:27017, reason: errno:61 Connection refused

Error: couldn't connect to server 127.0.0.1:27017 (127.0.0.1), connection attempt failed at src/mongo/shell/mongo.js:146

exception: connect failed

boot2dockerのポートフォワードが設定されていないみたいです。

VBoxManage modifyvm "boot2docker-vm" --natpf1 "guestmongodb,tcp,127.0.0.1,27017,,27017"

これで使えるようになりました!

かんたんですね。

参照

[ogp]https://github.com/dockerfile/mongodb[/ogp]