1.3. カスタムコンテナーイメージの作成


以下のいずれかの方法を使用して、Quarkus アプリケーションからコンテナーイメージを作成できます。

  • 手動によるコンテナーの作成
  • OpenShift Container Platform Docker ビルドを使用してコンテナーを作成
重要

Red Hat build of Quarkus アプリケーションをネイティブ実行可能ファイルにコンパイルすると、分析と最適化中に大量のメモリーが消費されます。quarkus.native.native-image-xmx 設定プロパティーを設定して、ネイティブコンパイル時に使用されるメモリーの量を制限できます。メモリー制限を低く設定すると、ビルド時間が長くなる可能性があります。

1.3.1. 手動によるコンテナーの作成

Linux AMD64 用のアプリケーションを使用して、コンテナーイメージを手動で作成できます。Quarkus ネイティブコンテナーを使用してネイティブイメージを生成すると、そのネイティブイメージは Linux AMD64 をターゲットとする実行可能ファイルを作成します。ホストオペレーティングシステムが Linux AMD64 ではない場合は、バイナリーを直接実行できず、手動でコンテナーを作成する必要があります。

Quarkus Getting Started プロジェクトには、以下の内容と共に src/main/docker ディレクトリーに Dockerfile.native が含まれます。

FROM registry.access.redhat.com/ubi9-minimal:9.5
WORKDIR /work/
RUN chown 1001 /work \
    && chmod "g+rwX" /work \
    && chown 1001:root /work
COPY --chown=1001:root target/*-runner /work/application

EXPOSE 8080
USER 1001

ENTRYPOINT ["./application", "-Dquarkus.http.host=0.0.0.0"]
Copy to Clipboard Toggle word wrap
注記

Universal Base Image (UBI)

次のリストは、Dockerfile での使用に適したイメージを示しています。

  • Red Hat Universal Base Image 9 (UBI9)。このベースイメージは、コンテナー化されたすべてのアプリケーション、ミドルウェア、ユーティリティーのベースレイヤーになるように設計されています。

    registry.access.redhat.com/ubi9/ubi:9.5
    Copy to Clipboard Toggle word wrap
  • Red Hat Universal Base Image 9 Minimal (UBI9-minimal)。microdnf をパッケージマネージャーとして使用する、最小化された UBI9 イメージ。

    registry.access.redhat.com/ubi9-minimal:9.5
    Copy to Clipboard Toggle word wrap
  • すべての Red Hat Base イメージは、コンテナーイメージ カタログサイトで入手できます。

手順

  1. 次のいずれかの方法を使用して、ネイティブ Linux 実行可能ファイルをビルドします。

    • Docker:

      ./mvnw package -Dnative -Dquarkus.native.container-build=true
      Copy to Clipboard Toggle word wrap
    • Podman:

      ./mvnw package -Dnative -Dquarkus.native.container-build=true -Dquarkus.native.container-runtime=podman
      Copy to Clipboard Toggle word wrap
  2. 次のいずれかの方法を使用して、コンテナーイメージをビルドします。

    • Docker:

      docker build -f src/main/docker/Dockerfile.native -t quarkus-quickstart/getting-started .
      Copy to Clipboard Toggle word wrap
    • Podman

      podman build -f src/main/docker/Dockerfile.native -t quarkus-quickstart/getting-started .
      Copy to Clipboard Toggle word wrap
  3. 次のいずれかの方法を使用して、コンテナーを実行します。

    • Docker:

      docker run -i --rm -p 8080:8080 quarkus-quickstart/getting-started .
      Copy to Clipboard Toggle word wrap
    • Podman:

      podman run -i --rm -p 8080:8080 quarkus-quickstart/getting-started .
      Copy to Clipboard Toggle word wrap

1.3.2. OpenShift Docker ビルドを使用してコンテナーを作成する

OpenShift Container Platform Docker ビルドストラテジーを使用して、Quarkus アプリケーションのコンテナーイメージを作成できます。このストラテジーは、クラスター内のビルド設定を使用してコンテナーイメージを作成します。

前提条件

  • OpenShift Container Platform クラスター、およびインストールされている最新バージョンの oc ツールにアクセスできる。oc のインストールは、CLI ツール ガイドの OpenShift CLI のインストール を参照してください。
  • OpenShift Container Platform API エンドポイントの URL。

手順

  1. OpenShift CLI にログインします。

    oc login -u <username_url>
    Copy to Clipboard Toggle word wrap
  2. OpenShift に新規プロジェクトを作成します。

    oc new-project <project_name>
    Copy to Clipboard Toggle word wrap
  3. src/main/docker/Dockerfile.native ファイルに基づいてビルド設定を作成します。

    cat src/main/docker/Dockerfile.native | oc new-build --name <build_name> --strategy=docker --dockerfile -
    Copy to Clipboard Toggle word wrap
  4. プロジェクトをビルドします。

    oc start-build <build_name> --from-dir .
    Copy to Clipboard Toggle word wrap
  5. プロジェクトを OpenShift Container Platform にデプロイします。

    oc new-app <build_name>
    Copy to Clipboard Toggle word wrap
  6. サービスを公開するには、以下を実行します。

    oc expose svc/<build_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
トップに戻る