7.4. eap-s2i-build テンプレートを使用したアプリケーションイメージのビルド
eap-s2i-build
テンプレートは複数のパラメーターを追加して、アプリケーションのビルドに使用するアプリケーションソースリポジトリーの場所と EAP S2I イメージを設定します。このテンプレートを使用すると、JBoss EAP 7.4、JBoss EAP XP、または JBoss EAP CD などのすべての JBoss EAP バージョンにイメージストリームを使用できます。
手順
- EAP イメージを OpenShift にインポートします。詳細は、JBoss EAP XP の OpenShift イメージストリームおよびテンプレートのインポート を参照してください。
- アプリケーションイメージストリームの変更についての更新を受信し、新規ビルドをトリガーするようにイメージストリームを設定します。詳細は、イメージストリームタグの定期的なインポートの設定 を参照してください。
EAP S2I イメージを使用してアプリケーションイメージをビルドするための
eap-s2i-build
テンプレートを作成します。$ oc replace --force -f https://raw.githubusercontent.com/jboss-container-images/jboss-eap-openshift-templates/master/eap-s2i-build.yaml
この
eap-s2i-build
テンプレートは 2 つのビルド設定と、中間ビルドアーティファクトと最終的なアプリケーションイメージに対応する 2 つのイメージストリームを作成します。最終的なアプリケーションイメージのリソースを作成するために、パラメーターとともに
eap-s2i-build
テンプレートを処理します。以下の例は、アプリケーションイメージmy-app
を作成します。$ oc process eap-s2i-build \ -p APPLICATION_IMAGE=my-app \ 1 \ -p EAP_IMAGE=jboss-eap-xp1-openjdk11-openshift:1.0 \ 2 -p EAP_RUNTIME_IMAGE=jboss-eap-xp1-openjdk11-runtime-openshift:1.0 \ 3 -p EAP_IMAGESTREAM_NAMESPACE=$(oc project -q) \ 4 \ -p SOURCE_REPOSITORY_URL=https://github.com/jboss-developer/jboss-eap-quickstarts.git \ 5 -p SOURCE_REPOSITORY_REF=xp-1.0.x \ 6 -p CONTEXT_DIR=microprofile-config | oc create -f - 7
- 1
- アプリケーションイメージストリームの名前。アプリケーションイメージは
latest
でタグ付けされます。 - 2
- EAP ビルダーイメージのイメージストリームタグ。
- 3
- EAP ランタイムイメージのイメージストリームタグ。
- 4
- Red Hat ミドルウェアイメージのイメージストリームがインストールされている名前空間。省略されている場合、
openshift
名前空間が使用されます。これは、openshift
以外の名前空間にイメージストリームをインストールしている場合にのみ変更します。 - 5
- アプリケーションの Git ソース URL。
- 6
- Git ブランチ/タグリファンレンス
- 7
- ビルドするアプリケーションが含まれる Git リポジトリー内のパス。
EAP オペレーターを使用して、デプロイメント用にアプリケーションイメージを準備します。
WildFlyServer
リソースを設定します。$ cat > my-app.yaml<<EOF apiVersion: wildfly.org/v1alpha1 kind: WildFlyServer metadata: name: my-app spec: applicationImage: 'my-app:latest' replicas: 1 EOF
設定を適用し、EAP オペレーターがこのアプリケーションイメージを参照する新しい
WildFlyServer
リソースを作成できるようにします。$ oc apply -f my-app.yaml
以下のコマンドを使用して、
WildFlyServer
リソースを表示します。$ oc get wfly my-app
関連情報
- アプリケーションイメージストリームのインポートに関する詳細は、JBoss EAP XP の最新の OpenShift イメージストリームおよびテンプレートのインポート を参照してください。
- イメージストリームの定期的なインポートについての詳細は、イメージストリームタグの定期的なインポートの設定 を参照してください。