第4章 ネイティブ実行可能ファイルにコンパイルされた Quarkus アプリケーションのデプロイ


Docker ビルドストラテジーを使用して、ネイティブ Quarkus アプリケーションを OpenShift にデプロイできます。Linux X86_64 オペレーティングシステムをターゲットとするアプリケーション用にネイティブ実行可能ファイルを作成する必要があります。ホストのオペレーティングシステムがこれとは異なる場合は、Docker や Podman などのコンテナーランタイムを使用してネイティブ Linux 実行可能ファイルを作成する必要があります。

Quarkus プロジェクトには、事前に生成された Dockerfile と手順が含まれています。カスタム Dockerfile を使用する場合は、src/main/docker ディレクトリー、またはモジュール内の任意の場所にファイルを追加する必要があります。また、quarkus.openshift.native-dockerfile プロパティーを使用して Dockerfile へのパスを設定する必要があります。

前提条件

  • Podman や Docker などの Linux X86_64 オペレーティングシステムまたは OCI (Open Container Initiative) と互換性のあるコンテナーランタイム。
  • quarkus-openshift エクステンションが含まれる Quarkus Maven プロジェクトがある。
  • oc を使用して OpenShift にログインし、プロジェクトを選択している。

手順

  1. Quarkus プロジェクトが含まれるディレクトリーに移動します。
  2. application.properties ファイルで以下のプロパティーを設定します。

    1. Docker ビルドストラテジーを設定します。

      quarkus.openshift.build-strategy=docker
      Copy to Clipboard Toggle word wrap
    2. コンテナーランタイムを設定します。

      quarkus.native.container-build=true
      Copy to Clipboard Toggle word wrap
    3. (オプション) 信頼されていない証明書を使用している場合は、KubernetesClient を設定します。

      quarkus.kubernetes-client.trust-certs=true
      Copy to Clipboard Toggle word wrap
    4. (オプション) サービスを公開して OpenShift ルートを作成します。

      quarkus.openshift.expose=true
      Copy to Clipboard Toggle word wrap
    5. (オプション) カスタム Dockerfile へのパスを設定します。

      quarkus.openshift.native-dockerfile=<path_to_your_dockerfile>
      Copy to Clipboard Toggle word wrap

      以下の例は、Dockerfile.custom-native へのパスを示しています。

      quarkus.openshift.jvm-dockerfile=src/main/docker/Dockerfile.custom-native
      Copy to Clipboard Toggle word wrap
    6. (オプション) コンテナーエンジンを指定し、以下を実行します。

      • Podman を使用してネイティブ実行可能ファイルをビルドします。

        quarkus.native.container-runtime=podman
        Copy to Clipboard Toggle word wrap
      • Docker を使用してネイティブ実行可能ファイルをビルドします。

        quarkus.native.container-runtime=docker
        Copy to Clipboard Toggle word wrap
  3. ネイティブ実行可能ファイルをビルドし、アプリケーションをパッケージ化して OpenShift にデプロイします。

    ./mvnw clean package -Pnative -Dquarkus.kubernetes.deploy=true
    Copy to Clipboard Toggle word wrap

検証

  1. 現在の OpenShift プロジェクトに関連付けられている Pod のリストを表示します。

    oc get pods
    Copy to Clipboard Toggle word wrap
  2. アプリケーションの Pod のログ出力を取得するには、以下のコマンドを入力します。<pod_name> は、お使いのアプリケーションの名前の接頭辞が付いた最新の Pod の名前になります。

    oc logs -f <pod_name>
    Copy to Clipboard Toggle word wrap
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2026 Red Hat
トップに戻る