3.2. OpenShift Source-to-Image (S2I) プロセスでの JWS の使用


JWS for OpenShift イメージを実行および設定するには、アプリケーションテンプレートパラメーターおよび環境変数を使用して OpenShift S2I プロセスを使用します。

JWS for OpenShift イメージの S2I プロセスは以下のようになります。

  • configuration/ Maven settings.xml ファイルがある場合は、新しいイメージの $HOME/.m2/ に移動します。

    Maven および Maven の settings.xml ファイルの詳細は、Apache Maven Project の Web サイトを参照してください。

  • ソースリポジトリーに pom.xml ファイルがある場合、$MAVEN_ARGS 環境変数の内容を使用して Maven ビルドがトリガーされます。

    デフォルトでは、package のゴールは openshift プロファイルで使用されます。これには、テストをスキップする引数 (-DskipTests) および Red Hat GA リポジトリーを有効にするための引数 (-Dcom.redhat.xpaas.repo.redhatga) が含まれます。

  • 成功した Maven ビルドの結果は /opt/webserver/webapps/ にコピーされます。これには、$ARTIFACT_DIR 環境変数によって指定されたソースディレクトリーからの WAR ファイルがすべて含まれます。$ARTIFACT_DIR のデフォルト値は target/ ディレクトリーです。

    MAVEN_ARGS_APPEND 環境変数を使用して Maven 引数を変更します。

  • deployments/ ソースディレクトリーのすべての WAR ファイルが /opt/webserver/webapps/ にコピーされます。
  • configuration/ ソースディレクトリーのすべてのファイルは、/opt/webserver/conf/ にコピーされます (Maven の settings.xml ファイルを除く)。
  • lib/ ソースディレクトリーのすべてのファイルは /opt/webserver/lib/ にコピーされます。

    注記

    カスタムの Tomcat 設定ファイルを使用する場合は、通常の Tomcat インストールと同じファイル名を使用する必要があります。例:context.xml および server.xml

S2I プロセスを設定してカスタム Maven アーティファクトリポジトリーミラー を使用する方法は、「アーティファクトリポジトリーミラー」の項を参照してください。

3.2.1. 既存の Maven バイナリーを使用した OpenShift アプリケーションの JWS の作成

既存のアプリケーションは、oc start-build コマンドを使用して OpenShift にデプロイされます。

前提条件: OpenShift 用の JWS にデプロイする既存の .war.ear、または .jar アプリケーション。

  1. ローカルファイルシステムでディレクトリー構造を準備します。

    アプリケーションがバイナリーに含まれていないコンテンツを含むソースディレクトリーを作成します(必要な場合は、「 Using the JWS for OpenShift Source-to-Image(S2I)プロセス」を参照)deployments/ サブディレクトリーを作成します。

    $ mkdir -p <build_dir>/deployments
  2. バイナリー (.war,.ear,.jar) を deployments/ にコピーします。

    $ cp /path/to/binary/<filenames_with_extensions> <build_dir>/deployments/
    注記

    ソースディレクトリーの deployments/ サブディレクトリーにあるアプリケーションアーカイブは、OpenShift 上にビルドされるイメージの $JWS_HOME/webapps/ ディレクトリーにコピーされます。アプリケーションをデプロイするには、web アプリケーションデータを含むディレクトリー階層が正しく構成されている必要があります( .get_started/get_started.xmlを参照)。

  3. OpenShift インスタンスにログインします。

    $ oc login <url>
  4. 必要に応じて新規プロジェクトを作成します。

    $ oc new-project <project-name>
  5. oc get is -n openshift でアプリケーションに使用する OpenShift イメージストリームの JWS を特定します。

    $ oc get is -n openshift | grep ^jboss-webserver | cut -f1 -d ' '
    
    jboss-webserver30-tomcat7-openshift
    jboss-webserver30-tomcat8-openshift
    jboss-webserver31-tomcat7-openshift
    jboss-webserver31-tomcat8-openshift
    注記

    オプション -n openshift は使用するプロジェクトを指定します。oc get is -n openshiftopenshift プロジェクトからイメージストリームリソース (is) を取得 (get) します。

  6. イメージストリームおよびアプリケーション名を指定して、新規ビルド設定を作成します。

    $ oc new-build --binary=true \
     --image-stream=jboss-webserver31-tomcat8-openshift \
     --name=<my-jws-on-openshift-app>
  7. OpenShift イメージビルドのバイナリー入力用に 以前作成されたソースディレクトリーを使用するように OpenShift に指示します。

    $ oc start-build <my-jws-on-openshift-app> --from-dir=./<build_dir> --follow
  8. イメージに基づいて新しい OpenShift アプリケーションを作成します。

    $ oc new-app <my-jws-on-openshift-app>
  9. サービスを公開して、アプリケーションがユーザーにアクセスできるようにします。

    # to check the name of the service to expose
    $ oc get svc -o name
    
    service/<my-jws-on-openshift-app>
    
    # to expose the service
    $ oc expose svc/my-jws-on-openshift-app
    
    route "my-jws-on-openshift-app" exposed
  10. 公開されたルートのアドレスを取得します。

    oc get routes --no-headers -o custom-columns='host:spec.host' my-jws-on-openshift-app
  11. ブラウザーでアプリケーションにアクセスするには http://<address_of_exposed_route> / <my-war-ear-jar-filename-without-extension> を入力します。
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る