第3章 Quarkus OpenShift エクステンションを使用した OpenShift への Quarkus アプリケーションのデプロイ


従来の Source-to-Image (S2I) ソースワークフローは、OpenShift 内でアプリケーションのデプロイ可能なアーティファクトを生成します。Quarkus OpenShift エクステンションは、S2I バイナリーワークフローを使用して、より効率的なデプロイメントプロセスを提供します。ソースからビルドする代わりに、エクステンションはローカルファイルシステムから JAR ファイルをアップロードします。その結果、ビルドプロセスは従来の S2I 手法よりも最大で 10 倍速くなります。ローカルで開発する場合、およびビルドサーバーまたは継続的インテグレーション (CI) システムから開発する場合に、Quarkus OpenShift エクステンションを使用して、ソースから繰り返し可能なビルドを実行することができます。

注記

Quarkus OpenShift エクステンションは、開発およびテストの目的でのみ使用してください。実稼働環境では、「4章S2I を使用した OpenShift での Quarkus アプリケーションのデプロイ」で説明されている従来の S2I 手法の使用を検討してください。

手順

  1. Quarkus Maven プロジェクトが含まれるディレクトリーに移動します。
  2. OpenShift エクステンションを既存プロジェクトに追加するには、以下のコマンドを入力します。

    ./mvnw quarkus:add-extension -Dextensions="openshift"
    Copy to Clipboard Toggle word wrap
    注記

    新規プロジェクトの作成時に -Dextensions="openshift" 引数を含めて、Quarkus OpenShift エクステンションを追加することができます。

    OpenShift エクステンションを追加すると、スクリプトは以下の依存関係を pom.xml ファイルに追加します。

       <dependency>
         <groupId>io.quarkus</groupId>
         <artifactId>quarkus-openshift</artifactId>
       </dependency>
    Copy to Clipboard Toggle word wrap
  3. 信頼されていない証明書を使用している場合は、src/main/resources/application.properties ファイルに以下の行を追加します。

    quarkus.kubernetes-client.trust-certs=true
    Copy to Clipboard Toggle word wrap
  4. Open JDK 11 の Red Hat Enterprise Linux 7 イメージを使用するように OpenShift を設定するには、以下の行を application.properties ファイルに追加します。

    quarkus.s2i.base-jvm-image=registry.access.redhat.com/openjdk/openjdk-11-rhel7
    Copy to Clipboard Toggle word wrap
    注記

    IBM Z インフラストラクチャーにデプロイする場合は、application.properties ファイルに quarkus.s2i.base-jvm-image=registry.access.redhat.com/openj9/openj9-11-rhel8 を追加します。

  5. OpenShift ルートを作成するには、以下の行を application.properties ファイルに追加します。

    quarkus.openshift.expose=true
    Copy to Clipboard Toggle word wrap
  6. 変更を application.properties ファイルに保存します。
  7. OpenShift CLI (oc) にログインします。

    oc login
    Copy to Clipboard Toggle word wrap
  8. 新しい OpenShift プロジェクトを作成するには、以下のコマンドを実行します。このコマンドの PROJECT_NAME は、新規プロジェクトの名前に置き換えます。

    oc new-project PROJECT_NAME
    Copy to Clipboard Toggle word wrap
  9. プロジェクトを OpenShift にデプロイするには、Quarkus Maven プロジェクトディレクトリーに以下のコマンドを入力します。

    ./mvnw clean package -Dquarkus.kubernetes.deploy=true
    Copy to Clipboard Toggle word wrap
  10. OpenShift プロジェクトでデプロイされたすべてのアプリケーションの名前およびルートを表示するには、以下のコマンドを入力します。

    oc get route
    Copy to Clipboard Toggle word wrap
  11. アプリケーションの完全な URL を表示するには、以下のコマンドを入力します。ここで、APPLICATION_NAME は OpenShift プロジェクトにデプロイされたアプリケーションの名前になります。

    export URL="http://$(oc get route APPLICATION_NAME -o jsonpath='{.spec.host}')"
    echo "Application URL: $URL"
    curl $URL/hello
    Copy to Clipboard Toggle word wrap
  12. ルートの hello エンドポイントに HTTP 要求を作成するには、以下のコマンドを入力します。

    curl $URL/hello
    Copy to Clipboard Toggle word wrap
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2026 Red Hat
トップに戻る