第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 プロセスの仕組み

注記

変数 EAP_HOME を使用して、JBoss EAP for OpenShift イメージ内部の JBoss EAP インストールへのパスを示します。

JBoss EAP for OpenShift の S2I プロセスは以下のように動作します。

  1. pom.xml ファイルがソースコードリポジトリーに存在する場合、Maven のビルドプロセスは $MAVEN_ARGS 環境変数のコンテンツを使用するようトリガーされます。

    $MAVEN_ARGS 環境変数でカスタム Maven 引数またはオプションを指定することは可能ですが、Red Hat は $MAVEN_ARGS_APPEND 環境変数を使用して指定することを推奨します。$MAVEN_ARGS_APPEND 変数は $MAVEN_ARGS からデフォルトの引数を取り、$MAVEN_ARGS_APPEND からのオプションを追加します。

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

    注記

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

  2. 成功した Maven ビルドの結果は、JBoss EAP for OpenShift イメージ内の EAP_HOME/standalone/deployments/ ディレクトリーにコピーされます。これには、$ARTIFACT_DIR 環境変数によって指定されたソースリポジトリーからの JAR、WAR、および EAR ファイルがすべて含まれます。$ARTIFACT_DIR のデフォルト値は Maven のターゲットディレクトリーです。
  3. configuration ソースリポジトリーディレクトリーのすべてのファイルは、JBoss EAP for OpenShift イメージ内の EAP_HOME/standalone/configuration/ ディレクトリーにコピーされます。カスタムの JBoss EAP 設定ファイルを使用する場合、ファイル名を standalone-openshift.xml にする必要があります。
  4. modules ソースリポジトリーディレクトリーのすべてのファイルは、JBoss EAP for OpenShift イメージ内の EAP_HOME/modules/ ディレクトリーにコピーされます。

S2I プロセスを指示してカスタム Maven アーティファクトリポジトリーミラーを利用する方法の追加情報は「アーティファクトリポジトリーミラー」を参照してください。