Azure Spring Apps 上の Java

: Azure Spring Apps は Azure Spring Cloud サービスの新名称です。

このチュートリアルでは、Visual Studio Code で Java Web アプリケーションを作成する方法について説明します。Java ワークロード向けに構築されたフルマネージドのマイクロサービスプラットフォームである Azure Spring Apps 上で、Java Web アプリをローカルで実行、デバッグ、編集する方法を学習します。

シナリオ

ここでは、シンプルな Spring Boot Getting Started Web アプリを Azure Spring Apps にデプロイします。

Azure Spring Apps を使用すると、コードを変更せずに Spring Boot マイクロサービスアプリケーションを Azure に簡単にデプロイできます。このサービスは、Spring Apps アプリケーションのインフラストラクチャを管理するため、開発者はコードに集中できます。その他の利点は次のとおりです。

  • 既存の Spring アプリを効率的に移行し、クラウドのスケーリングとコストを管理します。
  • Spring Apps パターンでアプリを最新化し、俊敏性とデリバリー速度を向上させます。
  • 複雑なインフラストラクチャなしでクラウドスケールで Java を実行し、より高い使用率を実現します。
  • コンテナー化の依存関係なしに迅速に開発およびデプロイします。
  • 実稼働ワークロードを効率的かつ容易に監視します。

Greeting from Java

始める前に

このサンプルを実行およびデプロイする前に、ローカル開発環境に Java SE Development Kit (JDK) バージョン 11 以降と Apache Maven ビルドツールがインストールされている必要があります。まだインストールしていない場合は、まずこれらのツールをインストールしてください。

Extension Pack for Java をダウンロードしてインストールします。

: このチュートリアルを完了するには、JAVA_HOME 環境変数を JDK のインストール場所に設定する必要があります。

Apache Maven バージョン 3 以降をダウンロードする

Apache Maven をダウンロードする

ローカル開発環境に Apache Maven をインストールする

Apache Maven をインストールする

Spring Boot アプリのダウンロードとテスト

Spring Boot Getting Started サンプルプロジェクトをローカルマシンにクローンします。Git リポジトリをクローンするには、コマンドパレット (⇧⌘P (Windows、Linux Ctrl+Shift+P)) で Git: クローン コマンドを使用します。リモートリポジトリの URL として https://github.com/spring-guides/gs-spring-boot.git を貼り付け、ローカルリポジトリを配置する親ディレクトリを決定します。その後、フォルダーに移動して code . と入力することにより、VS Code でクローンされたリポジトリ内の complete フォルダーを開きます。

: Visual Studio Code は https://vscode.dokyumento.jp から、Git は https://git.dokyumento.jp からインストールできます。

Clone Spring Repository

VS Code 内から、complete フォルダー内の Java ファイル (たとえば、src\main\java\hello\Application.java) を開きます。VS Code 用の Java 言語拡張機能がインストールされていない場合は、Microsoft Extension Pack for Java をインストールするように求められます。指示に従い、インストール後に VS Code をリロードします。

Install Java Extensions

Extension Pack for Java をインストールすると、プロジェクトが自動的にビルドされます (ビルドには数分かかる場合があります)。VS Code 内でアプリケーションを実行するには、F5 キーを押して、Java 環境を選択します。Java Debug 拡張機能は、プロジェクトの .vscode フォルダーの下にデバッグ構成ファイル launch.json を生成します。VS Code ステータスバーでビルドの進行状況を確認でき、すべてが完了すると、最終的なアクティブなデバッグ構成が表示されます。

debug configuration in the Status bar

VS Code がアプリケーションを起動する方法の詳細については、「デバッグ」の「起動構成」を参照してください。F5 キーをもう一度押して、デバッガーを起動します。

Run Spring Boot

Web ブラウザーを使用して http://localhost:8080 を参照して、Web アプリをテストします。「Greetings from Spring Boot!」というメッセージが表示されるはずです。

Greeting from Spring

変更を加える

次に、HelloController.java を編集して、「Greetings from Spring Boot!」を「Hello World」のような別のメッセージに変更しましょう。VS Code は Java に優れた編集エクスペリエンスを提供します。「コードの編集とナビゲート」で VS Code の編集機能とコードナビゲーション機能について確認してください。

エディターの上部にある 再起動 ボタンを選択して、アプリを再起動し、ブラウザーをリロードして結果を確認します。

Restart Application

アプリケーションのデバッグ

アプリケーションのソースコードにブレークポイント (F9) を設定し、ブラウザーをリロードしてブレークポイントにヒットさせます。

Debug Application

VS Code での Java のデバッグの詳細については、「Java デバッグ」をお読みください。

おめでとうございます。最初の Spring Boot Web アプリケーションがローカルで実行されました。クラウドでホストする方法については、読み進めてください。

Azure Spring Apps へのデプロイ

Java Web アプリケーションを構築し、ローカルで実行しました。次に、Visual Studio Code からデプロイし、Azure Spring Apps で実行する方法を学習します。

Azure Spring Apps 拡張機能をインストールする

Azure Spring Apps 拡張機能は、Azure Spring Apps の作成、管理、およびデプロイに使用され、主な機能は次のとおりです。

  • Azure Spring Apps でのアプリの作成/表示/削除
  • アプリへの Jar のデプロイ
  • パブリック/プライベートエンドポイントでのアプリへのアクセス
  • アプリの開始、停止、再起動
  • アプリのスケールイン/アウト、スケールアップ/ダウン
  • 環境変数や JVM オプションなどのアプリケーション設定の構成
  • アプリからのログのストリーミング

Azure Spring Apps 拡張機能をインストールするには、拡張機能ビュー (⇧⌘X (Windows、Linux Ctrl+Shift+X)) を開き、azure spring apps を検索して結果をフィルター処理します。Microsoft の Azure Spring Apps 拡張機能を選択します。コマンドラインエクスペリエンスについては、Azure CLI を使用した Azure Spring Apps クイックスタートも参照してください。

Azure サブスクリプションにサインインする

デプロイプロセスでは、Azure Account 拡張機能 (Spring Cloud 拡張機能と一緒に依存関係としてインストールされます) を使用します。Azure サブスクリプションでサインインする必要があります。

Azure サブスクリプションをお持ちでない場合は、無料の Azure アカウントにサインアップできます。

無料の Azure アカウントを作成する

Azure にサインインするには、コマンドパレット (⇧⌘P (Windows、Linux Ctrl+Shift+P)) から Azure: サインイン を実行します。または、SPRING APPS エクスプローラーで [Azure にサインイン...] をクリックして、Azure アカウントにサインインできます。

Azure sign in code

Azure Spring Apps でアプリを作成する

Azure アカウントにサインインし、Visual Studio Code でアプリを開いたら、アクティビティバーの Azure アイコンを選択して Azure エクスプローラーを開くと、Azure Spring Apps パネルが表示されます。

  1. サブスクリプションを右クリックし、ポータルでサービスを作成 を選択します。Azure Portal で次の手順を完了して、Azure Spring Apps サービスインスタンスを作成します。

    Create Azure Spring Apps Service instance

  2. サービスインスタンスが作成されたら、Azure エクスプローラーを更新して、新しいサービスインスタンスを表示します。サービスインスタンスを右クリックし、アプリの作成 を選択します。アプリ名を入力し、Java バージョンを選択して、Enter キーを押して作成を開始します。アプリは数分で準備完了になります。

    Create App

アプリをビルドしてデプロイする

コマンドプロンプトまたはターミナルウィンドウを開き、Maven コマンドを使用してプロジェクトをビルドできます。ビルドにより、target ディレクトリに新しい war または jar アーティファクトが生成されます。

mvn clean package
  1. Azure エクスプローラーでアプリを右クリックし、デプロイ を選択して、プロンプトが表示されたらビルド済みの Jar ファイルを選択します。

    Deploy App

  2. 右下のデプロイステータスを確認できます。完了したら、パブリックエンドポイントにアクセス を選択して Azure で実行中のアプリをテストし、パブリックエンドポイントを割り当てるように求められたら [はい] を選択します。Spring Boot Fat Jar のみがサポートされていることに注意してください。Azure Spring Apps のアプリの詳細を参照してください。

    Access public endpoint

アプリをスケールする

  1. [スケール設定][インスタンス数] を右クリックし、[編集] を選択すると、アプリを簡単にスケールできます。「2」と入力し、Enter キーを押してアプリをスケールします。

    Scale app

アプリケーションログをストリーミングする

  1. [アプリインスタンス] ノードを展開し、ログを表示するインスタンスを右クリックして、[ログのストリーミングを開始] を選択します。

    Start log streaming

  2. Visual Studio Code の出力ウィンドウが開き、ログストリームへの接続が確立されます。

    Log output

次のステップ