5.4. OpenShift への JBoss EAP XP Source-to-image (S2I) アプリケーションのデプロイ

JBoss EAP source-to-image (S2I) アプリケーションの OpenShift へのデプロイ

重要

OpenShift 上の OpenJDK 8 イメージおよびイメージストリームは非推奨となりました。

イメージおよびイメージストリームは OpenShift でも引き続きサポートされます。ただし、これらのイメージおよびイメージストリームの拡張機能はなく、今後削除される可能性があります。Red Hat は、標準のサポート条件下で、OpenJDK 8 イメージおよびイメージストリームに対するフルサポートおよびバグ修正を継続して提供します。

前提条件

  • オプション: テンプレートは、多くのテンプレートパラメーターにデフォルト値を指定でき、一部またはすべてのデフォルトをオーバーライドする必要がある場合があります。パラメーターのリストやデフォルト値などのテンプレートの情報を表示するには、コマンド oc describe template TEMPLATE_NAME を使用します。

手順

  1. JBoss EAP XP イメージと Java アプリケーションのソースコードを使用して、新しい OpenShift アプリケーションを作成します。S2I ビルド用に提供される JBoss EAP XP テンプレートの 1 つを使用します。

    $ oc new-app --template=eap-xp2-basic-s2i \ 1
     -p EAP_IMAGE_NAME=jboss-eap-xp2-openjdk8-openshift:latest \
     -p EAP_RUNTIME_IMAGE_NAME=jboss-eap-xp2-openjdk8-runtime-openshift:latest \
     -p IMAGE_STREAM_NAMESPACE=eap-demo \ 2
     -p SOURCE_REPOSITORY_URL=https://github.com/jboss-developer/jboss-eap-quickstarts \ 3
     -p SOURCE_REPOSITORY_REF=xp-2.0.x \ 4
     -p CONTEXT_DIR=microprofile-config 5
    1
    使用するテンプレート。アプリケーションイメージは latest でタグ付けされます。
    2
    最新のイメージとテンプレートは、プロジェクトの namespace にインポートされたため、イメージストリームが見つかる場所の namespace を指定する必要があります。通常はプロジェクトの名前になります。
    3
    アプリケーションのソースコードが含まれるリポジトリーの URL。
    4
    ソースコードに使用する Git リポジトリー参照。Git ブランチやタグ参照にすることができます。
    5
    ビルドするソースリポジトリー内のディレクトリー。

    別の例として、JDK 11 ランタイムイメージを使用して microprofile-config クイックスタートをデプロイするには、以下のコマンドを入力します。このコマンドは、GitHub の microprofile-config ソースコードとともに アプリケーションのデプロイメントに向けた OpenShift の準備 セクションで作成した、eap-demo プロジェクトで eap-xp2-basic-s2i テンプレートを使用します。

    $ oc new-app --template=eap-xp2-basic-s2i \ 1
     -p EAP_IMAGE_NAME=jboss-eap-xp2-openjdk11-openshift:latest \
     -p EAP_RUNTIME_IMAGE_NAME=jboss-eap-xp2-openjdk11-runtime-openshift:latest \
     -p IMAGE_STREAM_NAMESPACE=eap-demo \ 2
     -p SOURCE_REPOSITORY_URL=https://github.com/jboss-developer/jboss-eap-quickstarts \ 3
     -p SOURCE_REPOSITORY_REF=xp-2.0.x \ 4
     -p CONTEXT_DIR=microprofile-config 5
    1
    使用するテンプレート。アプリケーションイメージは latest でタグ付けされます。
    2
    最新のイメージとテンプレートは、プロジェクトの名前空間にインポートされたため、イメージストリームが見つかる場所の namespace を指定する必要があります。通常はプロジェクトの名前になります。
    3
    アプリケーションのソースコードが含まれるリポジトリーの URL。
    4
    ソースコードに使用する Git リポジトリー参照。Git ブランチやタグ参照にすることができます。
    5
    ビルドするソースリポジトリー内のディレクトリー。
    注記

    テンプレートは、多くのテンプレートパラメーターにデフォルト値を指定でき、一部またはすべてのデフォルトをオーバーライドする必要がある場合があります。パラメーターのリストやデフォルト値などのテンプレートの情報を表示するには、コマンド oc describe template TEMPLATE_NAME を使用します。

    新しい OpenShift アプリケーションを作成するときに、環境変数を設定 することもあります。

  2. ビルド設定の名前を取得します。

    $ oc get bc -o name
  3. 取得したビルド設定の名前を使用し、Maven のビルドの進捗を表示します。

    $ oc logs -f buildconfig/${APPLICATION_NAME}-build-artifacts
    
    …
    Push successful
    $ oc logs -f buildconfig/${APPLICATION_NAME}
    …
    Push successful

    たとえば、microprofile-config の場合、以下のコマンドは Maven ビルドの進捗状況を表示します。

    $ oc logs -f buildconfig/eap-xp2-basic-app-build-artifacts
    
    …
    Push successful
    $ oc logs -f buildconfig/eap-xp2-basic-app
    …
    Push successful