E.3. 環境変数
S2I Java および Karaf ビルダーイメージの動作に影響を与える環境変数を以下に示します。
E.3.1. ビルド時
ビルド時には以下の環境変数を使用できます。
-
MAVEN_ARGS
: Maven の呼び出し時に使用する引数で、デフォルトのパッケージを置き換えます。 -
MAVEN_ARGS_APPEND
: 追加の Maven 引数で、-X
や-am
-pl
などの一時的な引数の追加に便利です。 -
ARTIFACT_DIR
: マルチモジュールのビルドのために Jar ファイルが作成されたtarget/
へのパス。これらは${MAVEN_ARGS}
に追加されます。 -
ARTIFACT_COPY_ARGS
: アーティファクトを出力ディレクトリーからアプリケーションディレクトリーにコピーするときに使用する引数。イメージの一部になるアーティファクトを指定するのに便利です。 -
MAVEN_CLEAR_REPO
: 設定すると、アーティファクトのビルド後に Maven リポジトリーが削除されます。これはアプリケーションイメージを小さく維持するのに便利ですが、インクリメンタルビルドを使用できません。デフォルト値は false です。
E.3.2. 実行時
以下の環境変数を使用して、実行スクリプトに影響を与えることができます。
-
JAVA_APP_DIR
: アプリケーションがあるディレクトリー。アプリケーションのすべてのパスはこのディレクトリーを基準にした相対パスになります。 -
JAVA_LIB_DIR
: このディレクトリーには、Java jar ファイルと、クラスパスが保持されるオプションのクラスパスファイルが含まれます。単一行のクラスパス (コロン区切り) または行ごとにリストされた jar ファイルのいずれかになります。設定のない場合はJAVA_LIB_DIR
はJAVA_APP_DIR
ディレクトリーと同じになります。 -
JAVA_OPTIONS
: Java の呼び出し時に追加するオプション。 -
JAVA_MAX_MEM_RATIO
: JAVA_OPTIONS に-Xmx
オプションがない場合に使用されます。これは、コンテナーの制限をベースにしてデフォルトの最大ヒープメモリーを算出するために使用されます。このオプションをコンテナーのメモリー制限がない Docker コンテナーで使用しても、何も影響はありません。 -
JAVA_MAX_CORE
: ガベッジコレクタースレッドの数など、特定のデフォルトを算出するために使用される利用可能なコアの数を手動で制限します。0 に設定すると、コアの数を基にしてベース JVM のチューニングを行うことができません。 -
JAVA_DIAGNOSTICS
: これを設定して、一部の診断情報を取得し、標準出力に送ります。 -
JAVA_MAIN_CLASS
: Java の引数として使用するメインクラス。この環境変数を指定すると$JAVA_APP_DIR
ディレクトリーのすべての jar ファイルがクラスパスと$JAVA_LIB_DIR
ディレクトリーに追加されます。 -
JAVA_APP_JAR
:java -jar
で開始できるようにするための適切なマニフェストを持つ jar ファイル。ただし、指定がない場合は$JAVA_MAIN_CLASS
が設定されます。すべての場合で jar ファイルはクラスパスに追加されます。 -
JAVA_APP_NAME
: プロセスに使用する名前。 -
JAVA_CLASSPATH
: 使用するクラスパス。指定の無い場合は起動スクリプトが${JAVA_APP_DIR}/classpath
ファイルを確認し、その内容をクラスパスとして使用します。このファイルが存在しない場合は、アプリケーションディレクトリーのすべての jar が(classes:${JAVA_APP_DIR}/*)
以下に追加されます。 -
JAVA_DEBUG
: 設定するとリモートでのデバッグが有効になります。 -
JAVA_DEBUG_PORT
: リモートでのデバッグに使用されるポート。デフォルト値は 5005 です。
E.3.3. Jolokia の設定
以下の環境を Jolokia で使用できます。
-
AB_JOLOKIA_OFF
: 設定した場合、Jolokia のアクティベートを無効にします (空の値をエコーします)。Jolokia はデフォルトで有効になっています。 -
AB_JOLOKIA_CONFIG
: 設定した場合、ファイル (パスを含む) を Jolokia JVM エージェントプロパティーとして使用します。設定のない場合は、設定を使用して/opt/jolokia/etc/jolokia.properties
が作成されます。 -
AB_JOLOKIA_HOST
: バインドするホストアドレス (デフォルト値は 0.0.0.0)。 -
AB_JOLOKIA_PORT
: 使用するポート (デフォルト値は 8778)。 -
AB_JOLOKIA_USER
: Basic 認証のユーザー。デフォルトではjolokia
になります。 -
AB_JOLOKIA_PASSWORD
: Basic 認証のパスワード。デフォルトでは認証は無効になっています。 -
AB_JOLOKIA_PASSWORD_RANDOM
: 値を生成し、/opt/jolokia/etc/jolokia.pw
ファイルに書き込みます。 -
AB_JOLOKIA_HTTPS
:HTTPS
でセキュアな通信を有効にします。デフォルトでは、AB_JOLOKIA_OPTS
で serverCert 設定の指定がないと、自己署名サーバー証明書が生成されます。 -
AB_JOLOKIA_ID
: 使用するエージェント ID。 -
AB_JOLOKIA_DISCOVERY_ENABLED
: Jolokia の検出を有効にします。デフォルト値は false です。 -
AB_JOLOKIA_OPTS
: エージェント設定に追加される追加のオプション。オプションはkey=value
の形式で指定されます。
以下は、さまざまな環境とのインテグレーションにおけるオプションになります。
-
AB_JOLOKIA_AUTH_OPENSHIFT
: OpenShift TSL 通信のクライアント認証を有効にします。このパラメーターの値がクライアント証明書に存在するようにしてください。このパラメーターを有効にすると、Jolokia が自動的にHTTPS
通信モードになります。デフォルトの CA 証明書は/var/run/secrets/kubernetes.io/serviceaccount/ca.crt
に設定されます。
JAVA_ARGS
変数を対応する値に設定すると、アプリケーションの引数を指定できます。