Note
Basic、Standard、および Enterprise プランは、2025 年 3 月 17 日に廃止期間に入りました。 詳細については、「Azure Spring Apps の提供終了のお知らせ」を参照してください。
この記事の適用対象:✅ Java ✅ C#
この記事の適用対象:✅ Basic/Standard ✅ Enterprise
Spring Boot アプリケーションを手動で構成するのではなく、選択した Azure サービスを、Azure Spring Apps を使用してアプリケーションに自動的に接続することができます。 この記事では、アプリケーションを Azure Cosmos DB データベースに接続する方法を示します。
前提条件
- Azure Spring Apps にデプロイされたアプリケーション。 詳細については、初めてのアプリケーションを Azure Spring Apps にデプロイする方法のクイックスタートを参照してください。
- Azure Cosmos DB データベース インスタンス。
- Azure CLI バージョン 2.45.0 以上。
プロジェクトを準備する
次の依存関係のいずれかを、アプリケーションの pom.xml ファイルに追加します。 API の種類に適した依存関係を選択します。
API の種類: NoSQL
<dependency> <groupId>com.azure.spring</groupId> <artifactId>spring-cloud-azure-starter-data-cosmos</artifactId> </dependency>API の種類: MongoDB
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> </dependency>API の種類: Cassandra
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-cassandra</artifactId> </dependency>
az spring app deployを実行して現在のアプリを更新するか、az spring app deployment createを実行してこの変更のための新しいデプロイを作成します。
アプリを Azure Cosmos DB に接続する
Note
既定では、サービス コネクタはアプリケーション レベルで作成されます。 接続をオーバーライドするには、デプロイで他の接続をもう一度作成します。
Azure CLI の使用
次の例に示すように、Azure CLI で az spring connection create コマンドを使用して Cosmos NoSQL データベースに接続するように、Spring アプリを構成します。 この例の変数は必ず実際の値に置き換えてください。
Note
Azure Cosmos DB データベース設定の更新が完了するまでに数分かかる場合があります。
Note
Cosmos Cassandra を使用している場合は、--database の代わりに --key_space を使用します。 Cosmos Table を使用している場合は、--database の代わりに --table を使用します。 詳細情報については、「クイック スタート: Azure CLI を使用して Azure Spring Apps でサービス接続を作成する」を参照してください。
az spring connection create cosmos-sql \
--resource-group $AZURE_SPRING_APPS_RESOURCE_GROUP \
--service $AZURE_SPRING_APPS_SERVICE_INSTANCE_NAME \
--app $APP_NAME \
--target-resource-group $COSMOSDB_RESOURCE_GROUP \
--account $COSMOSDB_ACCOUNT_NAME \
--database $DATABASE_NAME \
--secret
Note
Service Connector を初めて使用する場合は、まずコマンド az provider register --namespace Microsoft.ServiceLinker を実行して、Service Connector リソース プロバイダーを登録します。
ヒント
コマンド az spring connection list-support-types --output table を実行して、Azure Spring Apps でサポートされているターゲット サービスと認証方法の一覧を取得します。 コマンド az spring がシステムに認識されない場合は、az extension add --name spring を実行して、必要な拡張機能がインストールされていることを確認します。
Azure ポータルの使用
または、この接続を構成するために、Azure portal で次の手順を完了することもできます。 Azure portal は、Azure CLI と同じ機能を備えており、対話型エクスペリエンスを提供します。
Azure portal で Azure Spring Apps インスタンスを選択し、ナビゲーション メニューから [アプリ] を選択します。 接続するアプリを選択し、ナビゲーション メニューで [Service Connector] を選択します。
[作成]を選択します
[基本] タブの [サービスの種類] で [Cosmos DB] を選択し、サブスクリプションを選択します。 [API の種類] で [コア (SQL)] を選択し、Cosmos DB アカウントとデータベースを選択します。 [クライアントの種類] で [Java] を選択し、 [次へ: 認証]を選択します。 データベースをまだ作成していない場合は、「 クイックスタート: Azure portal から Azure Cosmos DB アカウント、データベース、コンテナー、および項目を作成する」をご覧ください。
[認証] タブで、 [接続文字列]を選択します。 Service Connector は、Cosmos DB アカウントからアクセス キーを自動的に取得します。 [Next: Networking]\(次へ: ネットワーク\) を選択します。
[ネットワーク] タブで、 [Configure firewall rules to enable access to target service] (ターゲット サービスへのアクセスを有効にするようにファイアウォール規則を構成する) を選択し、 [次へ: 確認と作成] を選択します。
[確認と作成] タブで、検証が成功するまで待ってから、 [作成]を選択します。 作成が完了するまでに数分かかることがあります。
Spring アプリと Cosmos DB データベース間の接続が生成されたら、[Service Connector] ページでそれを確認し、展開ボタンを選択すると、構成された接続変数を表示できます。
次のステップ
この記事では、Azure Spring Apps のアプリケーションを Azure Cosmos DB データベースに接続する方法について説明しました。 アプリケーションへのサービス接続の詳細については、「Azure Cache for Redis キャッシュへの接続」を参照してください。