検索

4.19. コンテナー

download PDF

Image Mode for RHEL が FIPS モードをサポートするようになりました

この機能強化により、bootc イメージを構築するときに FIPS モードを有効にして、FIPS 承認モジュールのみを使用するようにシステムを設定できるようになります。bootc-image-builder を 使用することもできますが、その場合は Containerfile 設定で FIPS 暗号化ポリシーを有効にする必要があります。または、RHEL Anaconda インストールを使用することもできますが、その場合は Containerfile で FIPS モードを有効にするだけでなく、システムインストールの起動時に fips=1 カーネル引数を追加する必要もあります。詳細は、FIPS モードを有効にしたシステムのインストール を参照してください。

以下は、fips=1 カーネル引数を有効にするための指示を含む Containerfile です。

FROM registry.redhat.io/rhel9/rhel-bootc:latest#
# Enable fips=1 kernel argument:
https://containers.github.io/bootc/building/kernel-arguments.html
COPY 01-fips.toml /usr/lib/bootc/kargs.d/
# Install and enable the FIPS crypto policy
RUN dnf install -y crypto-policies-scripts && update-crypto-policies --no-reload --set FIPS

Jira:RHELDOCS-18585[1]

Image Mode for RHEL は論理的にバインドされたアプリケーションイメージをサポートするようになりました

この機能強化により、ベース bootc イメージにライフサイクルがバインドされたコンテナーイメージがサポートされるようになりました。これにより、アプリケーションとオペレーティングシステムのさまざまな運用プロセスを統合することができ、アプリイメージはイメージファイルまたは同等のものとしてベースイメージから参照されます。その結果、システムインストール用の複数のコンテナーイメージを管理できます。たとえば、切断されたインストールの場合、システムは 1 つだけではなくすべてミラーリングする必要があります。

Jira:RHELDOCS-18666[1]

Podman と Buildah が、イメージインデックスへの OCI アーティファクトの追加をサポートするようになる

この更新により、アーティファクトマニフェストを作成し、それをイメージインデックスに追加できるようになりました。

buildah manifest add コマンドは、次のオプションをサポートするようになりました。

  • アーティファクトマニフェストを作成するための --artifact オプション
  • --artifact-type--artifact-config-type--artifact-layer-type--artifact-exclude-titles、および --subject オプションを使用して、作成するアーティファクトマニフェストの内容を微調整します。

buildah manifest annotate コマンドは、以下のオプションをサポートするようになりました。

  • --index オプションは、イメージインデックス内のエントリーの 1 つではなく、インデックス自体にアノテーションを設定します。
  • イメージインデックスの件名フィールドを設定するための --subject オプション。

buildah manifest create コマンドが、新しいイメージインデックスにアノテーションを追加するための --annotation オプションをサポートするようになりました。

Jira:RHEL-33572

Podman ヘルスチェックイベントを無効にするオプションが利用可能になりました

この機能強化により、containers.conf 設定ファイルの [engine] セクションに新しい healthcheck_events オプションが追加されました。これを使用して、health_status イベントの生成を無効にできます。ヘルスチェックイベントのログ記録を無効にするには、`healthcheck_events=false` を設定します。

Jira:RHEL-34603

Podman のランタイムリソースの変更が永続化されます

podman update コマンドを使用したコンテナー設定の更新は永続します。この機能強化は、SQLite と BoltDB データベースバックエンドの両方に適用されることに注意してください。

Jira:RHEL-33567

マルチアーキテクチャーイメージのビルドが完全にサポートされます

マルチアーキテクチャーコンテナーイメージを作成する podman farm build コマンドが完全にサポートされるようになりました。

ファームとは、unix Podman ソケットが実行されているマシンのグループです。ファーム内のノードには、さまざまなアーキテクチャーのマシンを含めることができます。podman farm build コマンドは、podman build --arch --platform コマンドよりも高速です。

podman farm build を使用して、次のアクションを実行できます。

  • ファーム内のすべてのノードにイメージをビルドします。
  • ファーム内のすべてのノード上のイメージをマニフェストリストにバンドルします。
  • すべてのファームノードで podman build コマンドを実行します。
  • --tag オプションを使用して指定されたレジストリーにイメージをプッシュします。
  • マニフェストリストをローカルに作成します。
  • マニフェストリストをレジストリーにプッシュします。

マニフェストリストには、ファーム内に存在するネイティブアーキテクチャータイプごとに 1 つのイメージが含まれます。

Jira:RHEL-34609

Podman で Pod 用の Quadlet が利用可能になる

Podman v5.0 以降では、Quadlet を使用して、Pod の説明から systemd サービスファイルを自動的に生成できます。

Jira:RHEL-33574

Podman v2.0 RESTful API が更新されました

libpod/images/json エンドポイントに新しいフィールドが追加されました。

  • ターゲットがマニフェストであるかどうかを判断する isManifest ブールフィールド。libpod エンドポイントは、イメージとマニフェストリストの両方を返します。
  • * イメージリストの os および arch フィールド。

Jira:RHEL-34612

Kubernetes YAML は、データボリュームコンテナーを init コンテナーとしてサポートするようになりました。

"io.podman.annotations.kube.image.automount/$ctrname" アノテーションを使用して、ボリュームとして自動的にマウントするイメージのリストを Kubernetes YAML で指定できるようになりました。podman run --mount type=image,source=<image>,dst=<path>,`subpath=<path> を使用したイメージベースのマウントで、イメージの一部だけをコンテナーにマウントするための新しいオプション subpath がサポートされるようになりました。

Jira:RHEL-34605

Container Tools パッケージが更新される

Podman、Buildah、Skopeo、crunrunc ツールを含む、更新された Container Tools RPM メタパッケージが利用可能になりました。Podman v5.0 には、以前のバージョンに対する次の注目すべきバグ修正と機能拡張が含まれています。

  • podman manifest add コマンドは、マニフェストリストに OCI アーティファクトを追加するための新しい --artifact オプションをサポートするようになりました。
  • podman createpodman runpodman push コマンドは、イメージのプッシュとプルの再試行を設定するための --retry および --retry-delay オプションをサポートするようになりました。
  • podman run および podman exec コマンドは、ファイル記述子のリストをコンテナーに渡すための --preserve-fd オプションをサポートするようになりました。これは、特定の数のファイル記述子を渡す --preserve-fds の代わりとして使用します。
  • Quadlet はテンプレート化されたユニットをサポートするようになりました。
  • podman kube play コマンドは、volume.podman.io/image アノテーションを使用してイメージベースのボリュームを作成できるようになりました。
  • podman kube play コマンドで作成されたコンテナーには、新しいアノテーション io.podman.annotations.volumes-from を使用して、他のコンテナーのボリュームを含めることができるようになりました。
  • podman kube play コマンドで作成された Pod は、Pod 定義で io.podman.annotations.userns annotation を使用して、ユーザー名前空間オプションを設定できるようになりました。
  • podman create および podman run--gpus オプションが、Nvidia GPU と互換性を持つようになりました。
  • podman create および podman run--mount オプションは、コンテナーに逆参照されたターゲットではなく、シンボリックリンクをマウントするための新しいマウントオプション no-dereference をサポートするようになりました。
  • Podman は、レジストリーログイン認証情報を取得できる Docker 設定を指す新しい --config グローバルオプションをサポートするようになりました。
  • podman ps --format コマンドは、新しい .Label フォーマット指定子をサポートするようになりました。
  • podman run --userns=auto オプションの uidmapping および gidmapping オプションは、ホスト ID の前に @ 記号を付けることでホスト ID にマップできるようになりました。
  • Quadlet は systemd スタイルのドロップインディレクトリーをサポートするようになりました。
  • Quadlet は、新しい .pod ユニットファイルを使用して Pod を作成することをサポートするようになりました。
  • Quadlet は、.container ファイルで EntrypointStopTimeout という 2 つの新しいキーをサポートするようになりました。
  • Quadlet では、.container ファイルで Ulimit キーを複数回指定して、コンテナーに複数の ulimit を設定できるようになりました。
  • Quadlet では、.container ファイルで Notify キーを healthy に設定して、ヘルスチェックに合格し始めたときにのみコンテナーが起動したことを通知するようにできます。
  • コンテナーに対する podman inspect コマンドの出力が変更されました。Entrypoint フィールドは文字列から文字列の配列に変更され、StopSignal は整数から文字列に変更されます。
  • コンテナーの podman inspect コマンドは、ヘルスチェックなしでコンテナーを検査する場合に、ヘルスチェックに対して nil を返すようになりました。
  • 新しい BoltDB データベースを作成することはできなくなりました。作成を試みるとエラーが発生します。すべての新しい Podman インストールで、SQLite データベースバックエンドが使用されるようになりました。既存の BoltDB データベースは引き続き使用可能です。
  • CNI ネットワークのサポートはビルドタグによって制限されており、デフォルトでは有効になっていません。
  • Podman は、cgroups v1 システムで使用すると警告を出力するようになりました。cgroups v1 のサポートは非推奨となり、今後のリリースで削除される予定です。警告を抑制するには、PODMAN_IGNORE_CGROUPSV1_WARNING 環境変数を設定できます。
  • Docker 互換 API 経由で送信されるネットワーク統計情報は、集約されずにインターフェイスごとになり、Docker の互換性が向上しました。
  • パフォーマンスを高めるために、ルートレスネットワーキングのデフォルトツールが slirp4netns から pasta に変更されました。その結果、pasta という名前のネットワークはサポートされなくなりました。
  • List Images REST API で複数のフィルターを使用すると、フィルターが OR ではなく AND で結合されるようになったことで、Docker との互換性が向上しました。
  • 配列を受け入れるいくつかの Podman CLI オプションの解析が変更され、文字列で区切られたリストを受け入れなくなり、代わりにオプションを複数回渡すことが必要になりました。以下が該当するオプションです。

    • podman manifest annotate および podman manifest add--annotation オプション
    • podman kube play--configmap--log-opt--annotation オプション
  • podman image trust set--pubkeysfile オプション

    • podman createpodman runpodman pushpodman pull--encryption-key および --decryption-key オプション
    • podman exec--env-file オプションと、podman create および podman run--bkio-weight-device--device-read-bps--device-write-bps--device-read-iops--device-write-iops--device--label-file--chrootdirs--log-opt--env-file オプション
    • --hooks-dir および --module グローバルオプション
  • podman system reset コマンドは、稼働しているコンテナーの停止を待たず、すぐに SIGKILL シグナルを送信するようになりました。
  • podman network inspect コマンドの出力に、ネットワークを使用する実行中のコンテナーが含まれるようになりました。
  • podman compose コマンドは、AMD および Intel 64 ビットアーキテクチャー (x86-64-v2) と 64 ビット ARM アーキテクチャー (ARMv8.0-A) に加えて、他のアーキテクチャーでもサポートされるようになりました。
  • podman kube play コマンドと podman kube generate コマンドの --no-trunc オプションは非推奨になりました。Podman はアノテーションサイズに関して Kubernetes 仕様に準拠するようになったため、このオプションは不要になりました。
  • podman system connection コマンドからの接続と podman farm コマンドからのファームは、podman-connections.conf ファイルという新しい設定ファイルに書き込まれるようになりました。その結果、Podman は containers.conf ファイルに書き込まなくなりました。Podman は、containers.conf からの既存の接続を引き続き尊重します。
  • ほとんどの podman farm サブコマンドは、実行するためにファーム内のマシンに接続する必要がなくなりました。
  • podman create コマンドと podman run コマンドでは、コンテナーイメージでエントリーポイントが定義されていない場合に、コマンドラインでエントリーポイントを指定する必要がなくなりました。この場合、空のコマンドが OCI ランタイムに渡され、その結果の動作はランタイム固有になります。
  • 潜在的な短縮名を、イメージをプルするために使用できる Podman の完全修飾イメージ参照のリストに解決するための新しい API エンドポイント /libpod/images/$name/resolve 追加されました。

重要な変更の詳細は、アップストリームのリリースノート を参照してください。

Jira:RHEL-32714

--compat-volumes オプションは Podman と Buildah で利用可能です

新しい --compat-volumes オプションは、buildah buildpodman build、および podman farm build コマンドで使用できます。このオプションは、VOLUME 命令を使用してマークされたディレクトリーの内容に対して特別な処理をトリガーし、その後その内容は ADD および COPY 命令を使用しなければ変更できなくなります。これらの場所で RUN 命令により加えられた変更はすべて破棄されます。以前はそれがデフォルトの動作でしたが、現在はデフォルトで無効になっています。

Jira:RHEL-52239

新しい rhel10-beta/rteval コンテナーイメージ

Red Hat Container Registry でリアルタイムの registry.redhat.io/rhel10-beta/rteval コンテナーイメージを使用して、スタンドアロンの RHEL インストールのレイテンシー分析を実行できるようになりました。rhel10-beta/rteval コンテナーイメージを使用すると、コンテナー化されたセットアップ内でレイテンシーテストを実行し、このようなソリューションがリアルタイムワークロードで実行可能かどうかを判断したり、rteval のベアメタル実行と結果を比較したりできます。この機能を使用するには、リアルタイムサポート付きの RHEL をサブスクライブしてください。チューニングガイドラインは提供されていません。

Jira:RHELDOCS-18522[1]

containers.conf ファイルは読み取り専用になりました

containers.conf ファイルに保存されているシステム接続とファームの情報が読み取り専用になりました。システム接続とファームの情報は、Podman のみが管理する podman.connections.json ファイルに保存されます。Podman は、[engine.service_destinations][farms] セクションなどの古い設定オプションを引き続きサポートします。必要に応じて手動で接続またはファームを追加できますが、podman system connection rm コマンドを使用して containers.conf ファイルから接続を削除することはできません。

必要に応じて、containers.conf ファイルを手動で編集することは可能です。Podman v4.0 によって追加されたシステム接続は、Podman v5.0 へのアップグレード後も変更されません。

Jira:RHEL-40637

macvlan および ipvlan ネットワークインターフェイス名は、containers.conf で設定できます。

macvlan および ipvlan ネットワークを指定するには、containers.conf 設定ファイルの新しい interface_name フィールドを使用して、コンテナー内に作成されたネットワークインターフェイスの名前を調整します。

Jira:RHELDOCS-18769[1]

bootc-image-builder は、 ISO ビルドへのカスタムキックスタートファイルの定義と挿入をサポートするようになりました。

この機能強化により、ユーザーを設定してキックスタートを定義し、パーティションをカスタマイズし、キーを挿入し、キックスタートファイルを ISO ビルドに挿入してインストールプロセスを設定できるようになりました。結果として得られるディスクイメージは、デバイス、切断されたシステム、エッジデバイスなどを自動化してデプロイ自己完結型のインストーラーを作成します。その結果、bootc-image-builder を使用してカスタマイズされたメディアを作成するのがはるかに簡単になります。

Jira:RHELDOCS-18734[1]

bootc-image-builder を 使用した GCP イメージの構築のサポート

bootc-image-builder ツールを使用すると、.gce ディスクイメージを生成し、Google Compute Engine (GCE) プラットフォームでインスタンスをプロビジョニングできるようになりました。

Jira:RHELDOCS-18472[1]

bootc-image-builder を使用した VMDK の作成と展開のサポート

この機能強化により、bootc-image-builder ツールを使用して bootc イメージから仮想マシンディスク (VMDK) を作成し、VMDK イメージを VMware vSphere にデプロイできるようになりました。

Jira:RHELDOCS-18398[1]

podman pod inspect コマンドは、Pod の数に関係なく JSON 配列を提供するようになりました

以前は、単一の Pod を検査するときに podman pod inspect コマンドは JSON 配列を除外していました。この更新により、podman pod inspect コマンドは、検査された Pod の数に関係なく、出力に JSON 配列を生成するようになりました。

Jira:RHELDOCS-18770[1]

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.