第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 プロセスを示すフローチャート:

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変数を設定することもできます。-
modulesソースリポジトリーディレクトリーのすべてのファイルは、JBoss EAP for OpenShift イメージ内のEAP_HOME/modules/ディレクトリーにコピーされます。 -
configurationソースリポジトリーディレクトリーのすべてのファイルは、JBoss EAP for OpenShift イメージ内のEAP_HOME/standalone/configuration/ディレクトリーにコピーされます。カスタムの JBoss EAP 設定ファイルを使用する場合は、ファイル名をstandalone-openshift.xmlにする必要があります。
関連情報
- バイナリータイプのビルドについての詳細は、OpenShift 4.2 ドキュメントの バイナリー (ローカル) ソースを参照してください。
- S2I プロセスを指示してカスタム Maven アーティファクトリーポジトリーミラーを利用する方法の追加情報は アーティファクトリーポジトリーミラー を参照してください。