第3章 Java アプリケーションに対して JBoss EAP for OpenShift イメージを設定

JBoss EAP for OpenShift のイメージは、Java アプリケーションとの基本的な使用に対して事前設定されています。しかし、JBoss EAP インスタンスをイメージ内部で設定できます。OpenShift S2I プロセスをアプリケーションテンプレートパラメーターと環境変数とともに使用する方法が推奨されます。

重要

コンテナーが再起動または終了すると、実行中のコンテナーで変更された設定内容はすべて失われます。

これには、add-user.sh や管理 CLI などの、従来の JBoss EAP インストールに含まれるスクリプトを使用して変更された設定が含まれます。

OpenShift S2I プロセスをアプリケーションテンプレートパラメーターと環境変数とともに使用して、JBoss EAP for OpenShift イメージ内部の JBoss EAP インスタンスの設定を変更することが強く推奨されます。

3.1. JBoss EAP for OpenShift の S2I プロセスの仕組み

JBoss EAP の S2I プロセスを示すフローチャート:

Flowchart illustrating the S2I process for JBoss EAP
  1. pom.xml ファイルがソースコードリポジトリーにある場合、S2I ビルダーイメージは Maven ビルドプロセスを開始します。Maven ビルドは $MAVEN_ARGS の内容を使用します。

    pom.xml ファイルがソースコードリポジトリーにない場合、S2I ビルダーイメージはバイナリータイプのビルドを開始します。

    カスタム Maven 引数またはオプションを追加するには、$MAVEN_ARGS_APPEND を使用します。$MAVEN_ARGS_APPEND 変数は、$MAVEN_ARGS にオプションを追加します。

    デフォルトでは、OpenShift プロファイルは Maven の package ゴールを使用します。これには、テストをスキップするシステムプロパティー (-DskipTests) や Red Hat GA リポジトリーを有効にするシステムプロパティー (-Dcom.redhat.xpaas.repo) が含まれます。

    成功した Maven ビルドの結果は、JBoss EAP for OpenShift イメージ内の EAP_HOME/standalone/deployments/ ディレクトリーにコピーされます。これには、$ARTIFACT_DIR 環境変数によって指定されたソースリポジトリーからの JAR、WAR、および EAR ファイルがすべて含まれます。$ARTIFACT_DIR のデフォルト値は Maven のターゲットディレクトリーです。

    注記

    JBoss EAP for OpenShift イメージのプロキシーの背後で Maven を使用するには、$HTTP_PROXY_HOST および $HTTP_PROXY_PORT 環境変数を設定します。任意で、$HTTP_PROXY_USERNAME$HTTP_PROXY_PASSWORD、および $HTTP_PROXY_NONPROXYHOSTS 変数を設定することもできます。

  2. modules ソースリポジトリーディレクトリーのすべてのファイルは、JBoss EAP for OpenShift イメージ内の EAP_HOME/modules/ ディレクトリーにコピーされます。
  3. configuration ソースリポジトリーディレクトリーのすべてのファイルは、JBoss EAP for OpenShift イメージ内の EAP_HOME/standalone/configuration/ ディレクトリーにコピーされます。カスタムの JBoss EAP 設定ファイルを使用する場合は、ファイル名を standalone-openshift.xml にする必要があります。

関連情報