第4章 リファレンス
4.1. Source-to-Image (S2I) リンクのコピーリンクがクリップボードにコピーされました!
Red Hat JBoss Web Server for OpenShift イメージには、S2I スクリプト と Maven が含まれています。
4.1.1. OpenShift の JWS での Maven アーティファクトリーポジトリーミラーの使用 リンクのコピーリンクがクリップボードにコピーされました!
Maven リポジトリーは、プロジェクト jar、ライブラリー jar、プラグイン、その他のプロジェクト固有のアーティファクトなどのビルドアーティファクトおよび依存関係を保持します。また、S2I ビルドの実行中にアーティファクトをダウンロードするための場所も定義します。Maven Central Repository の使用に加えて、ローカルのカスタムリポジトリー (mirror) もデプロイします。
ローカルミラーを使用する利点は次のとおりです。
- 地理的に近く、高速な同期ミラーを使用できる。
- リポジトリーコンテンツの制御が強化されます。
- パブリックサーバーおよびリポジトリーに依存する必要なく、異なるチーム (開発者、CI) 全体でアーティファクトを共有できる。
- ビルド時間が改善される。
Maven リポジトリーマネージャー はミラーへのローカルキャッシュとして機能できます。リポジトリーマネージャーがすでにデプロイされ、外部で http://10.0.0.1:8080/repository/internal/ にアクセスできる場合、S2I ビルドはこのリポジトリーを使用できます。内部 Maven リポジトリーを使用するには、MAVEN_MIRROR_URL 環境変数をアプリケーションのビルド設定に追加します。
新規ビルド設定の場合は、oc new-app または oc new-build で --build-env オプションを指定します。
既存のビルド設定の場合
MAVEN_MIRROR_URL変数を必要とするビルド設定を特定します。oc get bc -o name
$ oc get bc -o name buildconfig/jwsCopy to Clipboard Copied! Toggle word wrap Toggle overflow MAVEN_MIRROR_URL環境変数をbuildconfig/jwsに追加します。oc env bc/jws MAVEN_MIRROR_URL="http://10.0.0.1:8080/repository/internal/"
$ oc env bc/jws MAVEN_MIRROR_URL="http://10.0.0.1:8080/repository/internal/" buildconfig "jws" updatedCopy to Clipboard Copied! Toggle word wrap Toggle overflow ビルド設定が更新されたことを確認します。
oc env bc/jws --list buildconfigs jws
$ oc env bc/jws --list # buildconfigs jws MAVEN_MIRROR_URL=http://10.0.0.1:8080/repository/internal/Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
oc start-buildを使用したアプリケーションの新規ビルドのスケジュール
アプリケーションのビルド中、Maven 依存関係はデフォルトのパブリックリポジトリーではなく、リポジトリーマネージャーからプルされることを確認できます。ビルドが完了すると、ミラーにはビルド時に取得され、使用されるすべての依存関係が含まれます。
4.1.2. Red Hat JBoss Web Server for OpenShift イメージに含まれるスクリプト リンクのコピーリンクがクリップボードにコピーされました!
run- Catalina (Tomcat) の実行
assemble-
Maven を使用してソースをビルドし、パッケージ (
.war) を作成して、$JWS_HOME/webappsディレクトリーに移動します。
4.1.3. OpenShift と互換性のある環境変数の JWS リンクのコピーリンクがクリップボードにコピーされました!
ビルド設定は、Source-to-Image build コマンドに環境変数を含めることで変更できます (「OpenShift の JWS での Maven アーティファクトリーポジトリーミラーの使用」 を参照)。Red Hat JBoss Web Server for OpenShift イメージに有効な環境変数は以下のとおりです。
| 変数名 | 説明 | 値の例 :leveloffset: +3 |
| ARTIFACT_DIR |
このディレクトリーの | target |
| HTTP_PROXY_HOST | Maven が使用する HTTP プロキシーのホスト名または IP アドレス。 | 192.168.1.1 |
| HTTP_PROXY_PORT | Maven が使用する HTTP プロキシーの TCP ポート。 | 8080 |
| HTTP_PROXY_USERNAME |
| myusername |
| HTTP_PROXY_PASSWORD |
| mypassword |
| HTTP_PROXY_NONPROXYHOSTS | 指定した場合、設定された HTTP プロキシーはこれらのホスト (ホスト、IP アドレス、またはドメインのコンマ区切りリスト) を無視します。 | *.example.net,some.example.org |
| MAVEN_ARGS | ビルド中に Maven に指定された引数をオーバーライドします。 | -e -Popenshift -DskipTests -Dcom.redhat.xpaas.repo.redhatga package |
| MAVEN_ARGS_APPEND | ビルド中に Maven に指定されたユーザー引数を追加します。 | -Dfoo=bar |
| MAVEN_MIRROR_URL | 設定する Maven ミラー/リポジトリーマネージャーの URL。 | http://10.0.0.1:8080/repository/internal/ |
| MAVEN_CLEAR_REPO | 任意で、ビルド後にローカル Maven リポジトリーを消去します。 | true :leveloffset: 3 |