11.9. JBoss EAP OpenShift プラットフォームでの起動可能な JAR の使用


11.9.1. oc コマンドを使用したバイナリービルドの実行

アプリケーションを起動可能な JAR としてパッケージ化した後、JBoss EAP OpenShift プラットフォームでアプリケーションを実行できます。

重要

OpenShift では、起動可能な JAR で EAP Operator の自動化トランザクションリカバリー機能を使用することはできません。

前提条件

  • MicroProfile Config 開発用の Maven プロジェクトを作成した。例: MicroProfile Config クイックスタート を参照してください。
  • 9.minor.micro.Final-redhat-XXXXX などの最新の Maven プラグインを確認した。この場合の 9 はメジャーバージョン、minor はマイナーバージョン、micro はマイクロバージョン、X は Red Hat ビルド番号です。たとえば 9.0.1.Final-redhat-00009 です。
注記

この手順の例では、以下のプロパティーを指定します。

  • Maven プラグインバージョンの場合は、${bootable.jar.maven.plugin.version} です。

これらのプロパティーをプロジェクトで設定する必要があります。以下に例を示します。

<properties>
    <bootable.jar.maven.plugin.version>9.0.1.Final-redhat-00009</bootable.jar.maven.plugin.version>
</properties>
Copy to Clipboard Toggle word wrap

手順

  1. 以下の内容を pom.xml ファイルの <build> 要素に追加します。以下に例を示します。

    <plugins>
    	<plugin>
    		<groupId>org.wildfly.plugins</groupId>
    		<artifactId>wildfly-jar-maven-plugin</artifactId>
    		<version>${bootable.jar.maven.plugin.version}</version>
    		<configuration>
    			<channels>
    				<channel>
    					<manifest>
    						<groupId>org.jboss.eap.channels</groupId>
    						<artifactId>eap-8.0</artifactId>
    					</manifest>
    				</channel>
    				<channel>
    					<manifest>
    						<groupId>org.jboss.eap.channels</groupId>
    						<artifactId>eap-xp-5.0</artifactId>
    					</manifest>
    				</channel>
    			</channels>
    			<feature-pack-location>org.jboss.eap.xp:wildfly-galleon-pack</feature-pack-location>
    			<layers>
    				<layer>jaxrs-server</layer>
    				<layer>microprofile-platform</layer>
    			</layers>
    			<cloud/>
    		</configuration>
    		<executions>
    			<execution>
    				<goals>
    					<goal>package</goal>
    				</goals>
    			</execution>
    		</executions>
    	</plugin>
    </plugins>
    Copy to Clipboard Toggle word wrap
    注記

    <cloud/> 要素をプラグイン設定の <configuration> 要素に含める必要があります。そのため、JBoss EAP Maven JAR プラグインは OpenShift プラットフォームを選択できます。

  2. アプリケーションをパッケージ化します。

    $ mvn package
    Copy to Clipboard Toggle word wrap
  3. oc login コマンドを使用して、OpenShift インスタンスにログインします。
  4. OpenShift で新しいプロジェクトを作成します。以下に例を示します。

    $ oc new-project bootable-jar-project
    Copy to Clipboard Toggle word wrap
  5. 以下の oc コマンドを入力してアプリケーションイメージを作成します。

    $ mkdir target/openshift && cp target/microprofile-config-bootable.jar target/openshift  
    1
    
    
    $ oc import-image ubi8/openjdk-17 --from=registry.redhat.io/ubi8/openjdk-17 --confirm 
    2
    
    
    $ oc new-build --strategy source --binary --image-stream openjdk-17 --name microprofile-config-app 
    3
    
    
    $ oc start-build microprofile-config-app --from-dir target/openshift 
    4
    Copy to Clipboard Toggle word wrap
    1
    ターゲットディレクトリーに openshift サブディレクトリーを作成します。パッケージ化されたアプリケーションが、作成されたサブディレクトリーにコピーされます。
    2
    最新の OpenJDK 17 イメージストリームタグおよびイメージ情報を OpenShift プロジェクトにインポートします。
    3
    microprofile-config-app ディレクトリーおよび OpenJDK 17 イメージストリームに基づいてビルド設定を作成します。
    4
    target/openshift サブディレクトリーをバイナリー入力として使用し、アプリケーションをビルドします。
    注記

    OpenShift は CLI スクリプトコマンドのセットを起動可能な JAR 設定ファイルに適用し、クラウド環境に合わせて調整します。このスクリプトにアクセスするには、Maven プロジェクト /target directorybootable-jar-build-artifacts/generated-cli-script.txt ファイルを開きます。

  6. 検証:

    利用可能な OpenShift Pod のリストを表示し、以下のコマンドを実行して Pod のビルドステータスを確認します。

    $ oc get pods
    Copy to Clipboard Toggle word wrap

    ビルドされたアプリケーションイメージを確認します。

    $ oc get is microprofile-config-app
    Copy to Clipboard Toggle word wrap

    出力には、名前、イメージリポジトリー、タグなどのビルドされたアプリケーションイメージの詳細が表示されます。この手順の例では、イメージストリーム名とタグの出力には microprofile-config-app:latest が表示されます。

  7. アプリケーションのデプロイ:

    $ oc new-app microprofile-config-app
    
    $ oc expose svc/microprofile-config-app
    Copy to Clipboard Toggle word wrap
    重要

    起動可能な JAR にシステムプロパティーを指定するには、JAVA_OPTS_APPEND 環境変数を使用する必要があります。以下の例は、JAVA_OPTS_APPEND 環境変数の使用方法を示しています。

    $ oc new-app <_IMAGESTREAM_> -e JAVA_OPTS_APPEND="-Xlog:gc*:file=/tmp/gc.log:time -Dwildfly.statistics-enabled=true"
    Copy to Clipboard Toggle word wrap

    新しいアプリケーションが作成され、起動します。アプリケーション設定は新しいサービスとして公開されます。

  8. 検証: ターミナルで以下のコマンドを実行し、アプリケーションが適切に動作するかどうかをテストします。

    $ curl http://$(oc get route microprofile-config-app --template='{{ .spec.host }}')/config/json
    Copy to Clipboard Toggle word wrap

    想定される出力:

    {"result":"Hello jim"}
    Copy to Clipboard Toggle word wrap
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat