第7章 設定プロファイルの使用
お使いの環境に応じて、異なる設定プロファイルを使用できます。設定プロファイルを使用すると、同じファイルに複数の設定を含めることができ、プロファイル名を使用してそれらを選択できます。Red Hat ビルドの Quarkus には 3 つの設定プロファイルがあります。さらに、独自のカスタムプロファイルを作成することもできます。
Quarkus のデフォルトプロファイル
- dev: 開発モードでのアクティブ化
- test: テストの実行時のアクティブ化
- prod: 開発またはテストモードで実行されていない場合のデフォルトプロファイル
前提条件
- Quarkus Maven プロジェクトがあること。
手順
Java リソースファイルを開き、以下のインポートステートメントを追加します。
import io.quarkus.runtime.configuration.ProfileManager;
import io.quarkus.runtime.configuration.ProfileManager;Copy to Clipboard Copied! Toggle word wrap Toggle overflow 現在の設定プロファイルを表示するには、
ProfileManager.getActiveProfile()メソッドを呼び出すログを追加します。LOGGER.infof("The application is starting with profile `%s`", ProfileManager.getActiveProfile());LOGGER.infof("The application is starting with profile `%s`", ProfileManager.getActiveProfile());Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記@ConfigProperty("quarkus.profile")メソッドを使用して、現在のプロファイルにアクセスすることはできません。
7.1. カスタム設定プロファイルの設定 リンクのコピーリンクがクリップボードにコピーされました!
設定プロファイルは、必要なだけ作成できます。同じファイルに複数の設定を含めることができ、プロファイル名を使用してそれらを選択できます。
手順
カスタムプロファイルを設定するには、
application.propertiesファイルのプロファイル名で設定プロパティーを作成します。<key>はプロパティー名に、<value>はプロパティーの値に、そして<profile>はプロファイル名に置き換えます。%<profile>.<key>=<value>
%<profile>.<key>=<value>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の設定例では、
quarkus.http.portの値はデフォルトで 9090 で、devプロファイルがアクティブ化されると 8181 になります。quarkus.http.port=9090 %dev.quarkus.http.port=8181
quarkus.http.port=9090 %dev.quarkus.http.port=8181Copy to Clipboard Copied! Toggle word wrap Toggle overflow プロファイルを有効にするには、以下のいずれかの方法を使用します。
quarkus.profileシステムプロパティーの設定quarkus.profileシステムプロパティーを使用してプロファイルを有効にするには、以下のコマンドを入力します。mvn -D<key>=<value> quarkus:<profile>
mvn -D<key>=<value> quarkus:<profile>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
<quarkus_profile> 環境変数の設定
環境変数を使用してプロファイルを有効にするには、以下のコマンドを入力します。
export <quarkus_profile>=<profile>
export <quarkus_profile>=<profile>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記システムプロパティーの値は環境変数の値よりも優先されます。
アプリケーションを再パッケージしてプロファイルを変更するには、以下のコマンドを入力します。
./mvnw package -Dquarkus.profile=<profile> java -jar target/myapp-runner.jar
./mvnw package -Dquarkus.profile=<profile> java -jar target/myapp-runner.jarCopy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の例は、
prod-awsプロファイルをアクティブ化するコマンドを示しています。./mvnw package -Dquarkus.profile=prod-aws java -jar target/myapp-runner.jar
./mvnw package -Dquarkus.profile=prod-aws java -jar target/myapp-runner.jarCopy to Clipboard Copied! Toggle word wrap Toggle overflow
デフォルトの Quarkus アプリケーションのランタイムプロファイルは、アプリケーションのビルドに使用されるプロファイルに設定されます。Red Hat ビルドの Quarkus は、環境モードに応じてプロファイルを自動的に選択します。たとえば、アプリケーションの実行中は、Quarkus は prod モードになります。