1.10. 設定プロファイルの使用
設定プロファイルを使用すると、さまざまな環境に合わせてアプリケーションの動作をカスタマイズできます。プロファイルを使用すると、複数の設定値セットを定義し、実行時に特定のセットをアクティブ化できます。
Red Hat build of Quarkus には次のデフォルト設定プロファイルが含まれています。
- dev: 開発モードで実行されているときにアクティブ化されます。
- test: テストを実行するときにアクティブ化されます。
- prod: 開発モードまたはテストモードで実行されていない場合に、デフォルトでアクティブ化されます。
カスタム設定プロファイルを定義してアクティブ化することもできます。
プロファイル固有の設定を定義するには、以下を実行します。
-
パーセント記号とプロファイル名で始まるプロパティーキー (
%custom.my.propertyなど) を追加します。 -
プロファイル固有の設定ファイル (
application-custom.propertiesなど) を作成します。
カスタムプロファイルを有効にするには、実行時に quarkus.profile プロパティーを設定します。
詳細は、カスタム設定プロファイルの設定 を参照してください。
前提条件
- Quarkus Maven プロジェクトを作成している。
手順
-
プロジェクトの
src/main/resourcesディレクトリーにあるapplication.propertiesファイルを開きます。 次のいずれかの方法を使用して、プロファイル固有の設定を追加します。
プロパティーファイルにプロパティーを追加し、
%と.の間に入れたプロファイル名 (dev.、%test.、%prod.など) を、そのプロパティーの接頭辞として付けます。以下に例を示します。%dev.quarkus.datasource.username=devuser %prod.quarkus.datasource.username=produserまたは、プロファイル固有の値を格納する、プロファイル固有の設定ファイル (
application-dev.properties、application-test.properties、application-prod.propertiesなど) を作成します。例:
application-dev.propertiesquarkus.datasource.username=devuser
quarkus.profile設定オプションをシステムプロパティーまたは環境変数として設定して、実行時にプロファイルをアクティブ化します。$ ./mvnw package -Dquarkus.profile=<profile><profile>は、dev、test、prodなどの 1 つ以上のコンマ区切りのプロファイル名に置き換えます。
1.10.1. カスタム設定プロファイルの設定 リンクのコピーリンクがクリップボードにコピーされました!
設定プロファイルは、必要なだけ作成できます。同じファイル内に複数の設定を含めることができ、プロファイル名を使用して設定を選択できます。
手順
カスタムプロファイルを設定するには、
application.propertiesファイルのプロファイル名で設定プロパティーを作成します。<property_name>はプロパティー名に、<value>はプロパティーの値に、そして<profile>はプロファイル名に置き換えます。設定プロパティーを作成します
%<profile>.<property_name>=<value>以下の設定例では、
quarkus.http.portの値はデフォルトで9090で、devプロファイルがアクティブ化されると8181になります。設定例
quarkus.http.port=9090 %dev.quarkus.http.port=8181プロファイルを有効にするには、以下のいずれかの方法を使用します。
quarkus.profileシステムプロパティーを設定します。quarkus.profileシステムプロパティーを使用してプロファイルを有効にするには、以下のコマンドを入力します。quarkus.profileプロパティーを使用して、プロファイルを有効にしますmvn -Dquarkus.profile=<value> quarkus:dev
QUARKUS_PROFILE環境変数を設定します。環境変数を使用してプロファイルを有効にするには、以下のコマンドを入力します。
環境変数を使用してプロファイルを有効にします
export QUARKUS_PROFILE=<profile>注記システムプロパティーの値は環境変数の値よりも優先されます。
アプリケーションを再パッケージしてプロファイルを変更するには、以下のコマンドを入力します。
プロフィールを変更します
./mvnw package -Dquarkus.profile=<profile> java -jar target/quarkus-app/quarkus-run.jar以下の例は、
prod-awsプロファイルをアクティブ化するコマンドを示しています。プロファイルをアクティブにするコマンドの例
./mvnw package -Dquarkus.profile=prod-aws java -jar target/quarkus-app/quarkus-run.jar
Quarkus アプリケーションのデフォルトのランタイムプロファイルは、アプリケーションのビルドに使用されるプロファイルに設定されます。Red Hat build of Quarkus は、環境モードに応じてプロファイルを自動的に選択します。たとえば、JAR としてアプリケーションを実行中の場合、Quarkus は prod モードになります。