2記事に分けて、Java(Spring Boot)からAzure Cosmos DB Emulatorを操作する手順をまとめます 。
今回はJava側からEmulatorに接続するための準備段階の手順についてまとめていきます。
Azure Cosmos DB Emulatorのダウンロード
以下のサイトからダウンロード
https://docs.microsoft.com/ja-jp/azure/cosmos-db/local-emulator?tabs=ssl-netstd21
インストールが完了したら、スタートメニューからエミュレータを起動する。
エミュレータの起動が完了すると自動で以下のようなページがブラウザに表示される。
(起動する日はすぐに起動するが、起動しない日はずっと待っていても起動しない・・・)
上記の画面に表示されている接続先情報は、Javaからエミュレータに接続する際に使用する。
データベース・コンテナの作成
データベースの作成
左側メニューの「Explorer」を選択し、「New Database」を押下する。
画面右側に作成するデータベースの設定入力欄が表示されるので、記述して「OK」ボタンを押下する。
正常に作成が完了すると画面左側「SQL API」の下に作成したデータベースが追加される。
コンテナの作成
左側メニューの「Explorer」を選択し、「New Container」を押下する。
画面右側に作成するコンテナの設定入力欄が表示されるので、記述して「OK」ボタンを押下する。
証明書のインポート
Java側からエミュレータに接続できるようにするためには、Java証明書ストアに証明書をインポートする必要がある。
まずはじめに、以下のページを参考に証明書をエクスポートする。
エクスポート先のパスがこの後の操作で必要となるので把握しておくこと。
JAVA_HOMEに設定しているJavaの「cacerts」ファイルのあるディレクトリで、コマンドプロンプトを起動する。
(%JAVA_HOME%/jre/lib/security
や%JAVA_HOME%/lib/security
あたり)
起動したコマンドプロンプトで証明書をインポートするコマンドを実行する。参考
keytool -import -alias cacerts -keystore cacerts -file 証明書のパス
「キーストアのパスワードを入力してください」と表示されるので「changeit」と入力してEnterを押下する。
「この証明書を信頼しますか」と表示されるので「y」と入力してEnterを押下する。
Javaからエミュレータに接続できなくなった場合はこの操作を再度実行する。
Javaでの実装について、以下の記事を書きました。