第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 プロセスは以下のように動作します。
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_USERNAME、HTTP_PROXY_PASSWORD、およびHTTP_PROXY_NONPROXYHOSTS変数を設定することもできます。-
成功した Maven ビルドの結果は、JBoss EAP for OpenShift イメージ内の
EAP_HOME/standalone/deployments/ディレクトリーにコピーされます。これには、$ARTIFACT_DIR環境変数によって指定されたソースリポジトリーからの JAR、WAR、および EAR ファイルがすべて含まれます。$ARTIFACT_DIRのデフォルト値は Maven のターゲットディレクトリーです。 -
configurationソースリポジトリーディレクトリーのすべてのファイルは、JBoss EAP for OpenShift イメージ内のEAP_HOME/standalone/configuration/ディレクトリーにコピーされます。カスタムの JBoss EAP 設定ファイルを使用する場合、ファイル名をstandalone-openshift.xmlにする必要があります。 -
modulesソースリポジトリーディレクトリーのすべてのファイルは、JBoss EAP for OpenShift イメージ内のEAP_HOME/modules/ディレクトリーにコピーされます。
S2I プロセスを指示してカスタム Maven アーティファクトリポジトリーミラーを利用する方法の追加情報は「アーティファクトリポジトリーミラー」を参照してください。