Oracle Database@Azure ~ AppServiceとの連携(後編)

前回の記事、AppServiceとの連携(前編)では、DB、AppServiceの構築、アプリケーションの作成について説明しました。

Oracle Database@Azure ~ AppServiceとの連携(前編) - JBS Tech Blog

今回の後編では、作成したアプリケーションのビルド、AppServiceへのデプロイ、アプリケーションの動作確認を行います。

ビルド

前編で作成したLinuxの開発環境のプロジェクトディレクトリ my-adb-app 直下に移動して、mvnw コマンドを用いてビルドします。

./mvnw clean package

エラーなく、以下のメッセージが出力されればビルド成功です。

[INFO] Replacing main artifact ./my-adb-app/target/demo-0.0.1-SNAPSHOT.jar with repackaged archive, adding nested dependencies in BOOT-INF/.
[INFO] The original artifact has been renamed to ./my-adb-app/target/demo-0.0.1-SNAPSHOT.jar.original
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  01:04 min
[INFO] Finished at: 2026-02-22T06:13:13Z
[INFO] ------------------------------------------------------------------------

ビルド後には、my-adb-app/target ディレクトリの下に demo-0.0.1-SNAPSHOT.jar が作成されています。

デプロイ

環境変数設定

AzurePortal から AppService を開き、前編で作成した Webアプリ(ここではtestapp01)を開きます。左メニューの「設定」ー「環境変数」を開きアプリの実行に必要な環境変数を設定します。

変数名 設定値 内容
DB_USER テーブルを作成したデータベースユーザー データベースにログインするユーザー。application.propertiesで読込まれる。
DB_PASSWORD パスワード DB_USERのパスワード。application.propertiesで読込まれる。
JAVA_OPTS -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8 文字化け対策
NLS_LANG Japanese_Japan.AL32UTF8 文字化け対策
TNS_ADMIN_PATH /home/site/wwwroot/wallet walletの配置場所。application.propertiesで読込まれる。

ウォレットのアップロード

データベースの接続情報が記載されたウォレットファイル(Wallet_apdb001.zip)を App Service にアップロードします。

Webアプリの 「開発ツール」ー「高度なツール」を開き「移動→」をクリックします。 Kudu が開きます。 アップロードの前にウォレットを配置するディレクトリを作成します。 ssh を開き SSH to Kudu の 「Start Connection」をクリックします。 Kudu のコンソールが開くので環境変数 TNS_ADMIN_PATH に指定したディレクトリを作成します。

cd site/wwwroot
mkdir wallet

File Manager を開き home/site/wwwroot/wallet に移動して Wallet_apdb001.zip をアップロードします。

zipファイルは自動的に展開されます。

アプリのアップロード

ビルドによって作成されたファイルを App Service にアップロードします。 File Manager で home/site/wwwroot に demo-0.0.1-SNAPSHOT.jar をアップロードします。

動作確認

App Service の概要から 「開始」をクリックしアプリを実行します。

ブラウザから表示結果を確認します。 既定のドメインに表示されているURLに、作成したアプリケーション MemoController.java に記載している「/memos」を付与して、「https ://<既定のドメイン>/memos」にアクセスします。

前編で作成したテーブルの内容が表示されていれば完成です。

おわりに

Oracle Database@Azure AutonomousDB と Azure App Service を用いて PaaS のみで Web + DB アプリケーションを作成できました。

今回作成したアプリケーションはテーブルの内容を表示するだけのものですが、アプリケーションが複雑になってもビルドやデプロイの手順は変わりません。そのため、大規模なアプリケーションでもこの手順で構築できます。

アプリケーション、データベースともにスケーリングが可能なため、突発的な負荷増大にも動じることなく、ビジネスの成長に合わせてシステムを最適に進化させていくことができます。

執筆担当者プロフィール
三条 光暢

三条 光暢(日本ビジネスシステムズ株式会社)

Oracle、PostgreSQLを中心に各種データベースの設計・構築・運用を携わっています。

担当記事一覧