##経緯
AWSのDocumentDBを使って遊んでるんだけど、ローカルの開発で使ってるMongoDB Compassで接続できないかいろいろ試した結果できたのでまとめ。
##前提
まずは、**接続するマシンにMongoDB Compassを入れておくこと。**WindowsもLinuxあるからお好きなので。
AWSのDocumentDBには設定用のEC2が接続できていること。
これはDocumentDBのAWS公式ドキュメントのAmazon EC2 を使用して接続を見ながらやればすぐできると思う。
##下準備 EC2編
そこに書いてあるEC2接続用プライベートキーファイル(AWS-EC2_ExpampleA.pem)と、ユーザ名(初期値はec2-user)とインスタンスのURL(ec2-user@ec2-AA-BB-CC-DD.compute-1.amazonaws.com)を記録しておく。
プライベートキーファイルはEC2インスタンス作成時にしか表示できないので、保存してなかったらインスタンスを再度作成したほうが早い。
- SSH接続用(Port22)と自分のIPv4アドレスを追加
- MongoDB接続用(Port27017)と自分のIPv4アドレスを追加
- MongoDB接続用(Port27017)とインスタンスのIPv4アドレスを追加
##下準備 DocumentDB
- DocumentDBのURL(docdb-YYYY-MM-DD-hh-mm-ss.cluster-sample.A1-east-1.docdb.amazonaws.com)
- DocumentDB作成時のID
- DocumentDB作成時のパスワード
DocumentDBのURLは、「mongo シェルでこのクラスターに接続する」に書いてあるとこから引っ張ってくる。
MongoDB Compassの設定
- DocumentDBのURL : docdb-YYYY-MM-DD-hh-mm-ss.cluster-sample.A1-east-1.docdb.amazonaws.com
- DocumentDBのポート番号 : 27017
- 認証方法 : Username/Password
- UserName : DocumentDB作成時のID
- Password : DocumentDB作成時のパスワード
- EC2インスタンスのURL : ec2-user@ec2-AA-BB-CC-DD.compute-1.amazonaws.com
- EC2のユーザ名 : ec2-user
- EC2接続用プライベートキー : AWS-EC2_ExpampleA.pem
これで、入力項目は終わり。
#接続
Connectボタンをクリックすると接続を開始する。
接続に成功すると以下のようなダイアログが表示される。
DocumentDBは純粋なMongoDBでないので、警告メッセージがでてるだけで問題ない。
アプリの左側にも警告メッセージ表示されてるけど通常使用には問題ない。
ここまでできればローカルでやってることと特に制限なくできる。
接続してしまえば、ちょっとしたDBの書き換えや抽出できるので便利になるので捗る。