🦭

Podman v4.0.0 リリースノート

2022/12/31に公開

Podman v4.0.0がアップストリームでリリースされました。

https://github.com/containers/podman/releases/tag/v4.0.0

リリースノートを日本語に翻訳したものを公開します。どんな内容があるのか把握するのにお役立てください。

以下、リリースノート日本語翻訳


リリースノート

4.0.0

機能

  • Podman はネットワークスタックを大幅に書き換え、既存の CNI スタックに加え、コンテナネットワークを設定する新しいツールである Netavark のサポートを追加しました。Netavark が利用可能になると、新しいインストールがデフォルトになります。
  • podman network connect コマンドは 3 つの新しいオプション、 --ip, --ip6, --mac-address をサポートし、アタッチする新しいネットワークの設定を指定できるようになりました。
  • podman network create コマンドは --subnet, --gateway, --ip-range オプションを複数回指定できるようになり、ユーザーが指定したサブネットで IPv4 と IPv6 のデュアルスタックネットワークを作成することができるようになりました。
  • podman create, podman pod create, podman run, podman play kube--network オプションは、ネットワーク名を指定する際に、 alias, ip, mac, interface_name などの高度なネットワークオプションも指定できるため、複数のネットワークに接続しているコンテナを作成する際にネットワークの詳細設定ができるようになった。
  • podman play kube コマンドは --net オプションを複数回指定できるようになり、作成したコンテナやポッドを複数のネットワークに接続することができるようになりました。
  • podman create, podman pod create, podman run コマンドは、新しいオプションである --ip6 をサポートし、作成したコンテナやポッドが使用する静的 IPv6 アドレスを指定することができるようになりました。
  • Macvlan ネットワークでは、 -o mode= オプションでネットワークのモードを設定できるようになりました。
  • CNI ネットワークスタックを使う場合、新しいネットワークドライバである ipvlan が利用できるようになりました。
  • podman info コマンドは使用中のネットワークバックエンド (Netavark または CNI) を表示するようになりました。
  • 使用するネットワークバックエンドは containers.confnetwork_backend フィールドで指定することができるようになりました。コンテナが存在する間はバックエンドを切り替えることは推奨されないことに注意してください。
  • 全ての Podman コマンドは、STDOUT への全ての出力を抑制する新しいオプション --noout をサポートするようになりました。
  • コンテナを削除する全てのコマンド (podman rm --force, podman pod rm --force, podman volume rm --force, podman network rm --force) で、 --time オプションを指定し、SIGKILL に移行するまでのコンテナの停止時間 (podman stop のフラグと同じ)を指定することができるようになりました。
  • podman runpodman create コマンドは新しいオプション --passwd をサポートしました。このオプションはイメージの /etc/passwd/etc/groups ファイルを Podman で変更せずに作成したコンテナに使用します (#11805).
  • podman runpodman create コマンドは新しいオプション、 --hostuser をサポートするようになりました。
  • podman createpodman run コマンドは 2 つの新しいオプション --unsetenv--unsetenv-all をサポートし、Podman とコンテナイメージによって設定されたデフォルトの環境変数をクリアできるようになりました (#11836).
  • podman rm コマンドが新しいオプション --depend をサポートしました。これは指定されたコンテナとそれに依存している全てのコンテナを再帰的に削除します (#10360)。
  • ラベルに基づいた出力のフィルタリングをサポートしている全てのコマンド (例: podman volume ls, podman ps) は、正規表現を使ったラベルの指定に対応しました (例: --filter label=some.prefix.com/key/*)。
  • podman pod create コマンドは --volume オプションをサポートし、ポッド内の全てのコンテナに自動的にマウントされるボリュームを指定できるようになりました (#10379)。
  • podman pod create コマンドは --device オプションをサポートするようになり、デバイスを指定して、ポッド内の全てのコンテナに自動的にマウントできるようになりました。
  • podman pod create コマンドは --volumes-from オプションをサポートするようになり、既存の Podman コンテナのボリュームをポッド内の全てのコンテナに自動的にマウントすることができるようになりました。
  • podman pod create コマンドが --security-opt オプションをサポートしました。これにより、ポッド内の全てのコンテナに対してセキュリティ設定(例:SELinux や Seccomp を無効にする)を自動的に行うことができます (#12173)。
  • podman pod create コマンドは --share-parent オプションをサポートするようになりました。デフォルトは true で、ポッド内のコンテナが共有 cgroup 親を使用するかどうかを制御します。
  • podman pod create コマンドは --sysctl オプションをサポートするようになり、ポッド内の全てのコンテナに対して sysctls を自動的に設定できるようになりました。
  • podman events コマンドは --no-trunc オプションをサポートするようになり、コンテナ ID をデフォルトのフル ID ではなく、ショート ID で表示できるようになりました。このフラグのデフォルトは true で、フル ID がデフォルトのままです (#8941)。
  • podman machine init コマンドは新しい VM タイプ、wsl をサポートしました。これは Windows でのみ利用可能です。これは、QEMU (#12503) を使って別の VM を作成して管理する代わりに、WSL を podman machine のバックエンドとして使用するものです。
  • podman machine init コマンドは新しいオプション --now をサポートし、作成後すぐに VM を開始できるようになりました。
  • podman machine init コマンドは新しいオプション --volume をサポートし、ホストから作成した仮想マシンにコンテンツをマウントできるようになりました。
  • podman machine で作成した仮想マシンは自動的に Podman API ソケットをホストにマウントするので、Podman や Docker API を使う人はホストマシンから直接利用できます (#11462 )。
  • podman machine で作成された仮想マシンは、ホストのキーチェーンから仮想マシンに証明書を自動的にマウントするようになりました (#11507)。
  • podman machine で作成された仮想マシンは、標準のプロキシ環境変数をホストから仮想マシンに自動的に伝搬するようになりました。これには SSL_FILE_CERT から VM に必要な証明書をコピーすることが含まれます。
  • podman machine ssh コマンドは、VM に接続するためのユーザー名を指定する、新しいオプション --username をサポートするようになりました。
  • podman machine で作成した VM からのポートフォワーディングは、カスタムホスト IP (例: -p 127.0.0.1:8080:80) や UDP プロトコル、そして slirp4netns ネットワークモード (#11528 および #11728) で作成したコンテナで指定するポートをサポートするようになりました。
  • podman system connection rm コマンドに新しいオプション --all が追加され、利用できる全ての接続を削除できるようになりました (#12018)。
  • podman system service コマンドのデフォルトのタイムアウトは、ハードコードされた 5 秒ではなく、 containers.conf (service_timeout フィールドを使用) によって設定されるようになりました。
  • podman createpodman run--mount type=devpts オプションが新しいオプションをサポートするようになりました。uid, gid, mode, max です。
  • podman createpodman run--volume オプションは新しいオプション :idmap をサポートしました。これは ID マッピングファイルシステムを使って、UID と GID の範囲が異なる複数のコンテナが同じボリュームにアクセスできるようにします (#12154)。
  • ボリュームに対する U オプションは、マウントされたボリュームの所有権を変更し、コンテナ内で実行しているユーザーがアクセスできるようにします。
  • ボリューム用の :O オプションは、オーバーレイファイルシステムをボリューム上にマウントし、変更を持続させないように指定しますが、バインドマウントと同様に名前付きボリュームでもサポートされるようになりました。
  • ボリュームに対する :O オプションは、新たに upperdirworkdir という 2 つのオプションをサポートしました。
  • (--rootfs を使って) ユーザーが指定したルートファイルシステムから作成された Podman コンテナは、ユーザーが指定したルートファイルシステムの上にオーバーレイファイルシステムを作成できるようになり、ユーザーが指定したルートファイルシステムに :O を付けることで変更が持続されないようになりました。
  • podman save コマンドに新しいオプション --uncompressed が追加されました。これは画像のレイヤーを圧縮せずに保存します (#11613)。
  • Podman はコンテナ用の新しいログドライバ passthrough をサポートしています。これはすべての出力を podman コマンドの STDOUT と STDERR に直接ログとして記録します。
  • podman build コマンドは 2 つの新しいオプション、 --unsetenv--all-platforms をサポートするようになりました。
  • podman image prune コマンドが新しいオプション --external をサポートしました。このオプションにより、Podman で作成されていないコンテナ (例: Buildah ビルドのテンポラリコンテナ) を prun できます (#11472)。
  • Docker との互換性のために、podman image prune のエイリアスとして、podman builder prunepodman buildx prune の2つが追加されました。
  • podman play kube コマンドは新しいオプション、 --no-hosts をサポートしました。このオプションは生成される全てのコンテナにイメージの /etc/hosts ファイルを使用し、Podman から hosts ファイルを変更できないようにします (#9500)。
  • podman play kube コマンドが新しいオプション --replace をサポートしました。これは既存のコンテナとポッドを、このコマンドで生成されるコンテナとポッドと同じ名前に置き換えます (#11481)。
  • podman play kube コマンドが新しいオプション --log-opt をサポートし、生成されるコンテナとポッドのロギング設定を調整できるようになりました (#11727)。
  • podman play kube コマンドは、configmap からボリュームを指定する Kubernetes YAML をサポートするようになりました。
  • podman generate systemd コマンドは、テンプレートユニットファイルを生成するための新しいオプション、 --template をサポートするようになりました。
  • podman generate systemd コマンドは、新しいオプション --start-timeout をサポートし、生成されるユニットファイルのデフォルトの開始タイムアウトをオーバーライドするようになりました (#11618)。
  • podman generate systemd コマンドは新しいオプション --restart-sec をサポートするようになりました。

重大な変更点

  • Podman v4.0は初回起動時にPodmanデータベース内でいくつかのスキーマのマイグレーションを実行します。これらのスキーマの移行により、Podman v3.x 以前ではデータベースから特定のネットワーク設定情報を読み取ることができなくなり、Podman v4.0 から以前のバージョンにダウングレードすると、コンテナの固定 IP、MAC アドレス、ポートバインディングが失われることになります。
  • Docker 互換 API のすべてのエンドポイントは、Docker との互換性を高めるために、すべてのイメージのショートネームが Docker Hub に解決されるようになりました。この動作は containers.confcompat_api_enforce_docker_hub オプションでオフにできます (#12320)。
  • マニフェストリストとネットワーク操作の Podman API は完全に書き直され、以前の API にあった問題や矛盾を解決しました。互換性のない API を古い Podman クライアントで使うと警告が出るはずです。
  • make install の makefile ターゲットは暗黙のうちに Podman をビルドしなくなり、make がその前に実行されていないと失敗します。
  • podman rm --depends, podman rmi --force, podman network rm --force コマンドは infra コンテナを削除する必要がある場合、ポッドを削除できるようになりました(例: infra イメージ上の podman rmi --force は全てのポッドと infra コンテナを削除する)。以前は、infra コンテナを削除しようとすると、どのコマンドもエラーになりました。
  • podman system reset コマンドは、全てのボリューム、ポッド、コンテナ、イメージに加え、システム上の全てのネットワークを削除するようになりました。
  • 環境変数 CONTAINER_HOST が設定されている場合、Podman はコンテナをローカルで実行するのではなく、環境変数で指定されたリモート Podman サービスにデフォルトで接続します (#11196).
  • コンテナ上の podman inspect からの Healthcheck 情報は、Docker との互換性を高めるために、JSON タグの名前が Healthcheck から Health に変更されました。エイリアスが追加され、--formatオプションで古い名前を使っても動作するようになりました (#11645)。
  • コンテナ上の podman inspect によるセカンダリ IP アドレスと IPv6 アドレス (SecondaryIPAddressesSecondaryIPv6Addresses) は、Docker との互換性のために文字列配列から構造体配列に変更されました(構造体は IP アドレスとプレフィックス長を含むようになりました)。
  • podman volume rm --force コマンドは、実行中のボリュームに依存しているコンテナを削除するようになりました(以前は、停止しているコンテナのみを削除していました)。
  • podman search コマンドの出力は、Dockerhub 以外のレジストリでは使用されない Index、Stars、Automated カラムを削除するように変更されました。
  • ルートレスコンテナの /etc/hostshost.containers.internal エントリは、コンテナがホストに到達できるように、ホストマシンのパブリック IP アドレスを指すようになりました(以前の値である slirp4netns アドレスは実際にはホストを指していませんでした) (#12000).
  • infra コンテナを持つ pods で作成されたコンテナは、もはや --uidmap--gidmap によって独立してユーザーネームスペースを設定することができません (#12669)。
  • いくつかのコンテナの状態は内部的に名前が変更されました。例えば、以前の Configured 状態は Created という名前になり、以前の Created 状態は Initialized という名前になりました。podman psコマンドは Docker との互換性のためにこれらの名前を既に正規化していますので、これはpodman inspect` でコンテナを検査するときにのみ表示されます。

変更点

  • Podman コンテナは、サポートされているネットワークに接続されている場合、コンテナのショート ID をネットワークエイリアスとして自動的に追加するようになりました (#11748)。
  • podman machine stop コマンドは、マシンが正常に停止した時にログを記録するようになりました (#11542)-Podman machine stop` コマンドは、マシンが正常に停止した時にログを記録するようになりました。
  • podman machine stop コマンドは VM が停止するまで待つようになりました。以前は、shutdown コマンドを送った後、VM がシャットダウンするのを待たずにすぐに戻っていました。
  • podman machine で作成された VM は、より多くの cgroup コントローラをコンテナの実行に使われるルートレスユーザーに委譲し、追加のリソース制限を使えるようになりました (#13054).
  • podman stop コマンドは、stop timeout の期限が切れてコンテナを停止するために SIGKILL を使用しなければならない場合、コンソールに警告を記録するようになりました (#11854)。
  • いくつかのパフォーマンスの最適化が実装され、コンテナやポッドの作成、および大きな範囲のポートを転送するコンテナやポッドの実行を高速化するようになりました。
  • podman search コマンドの --no-trunc 引数は、デフォルトで true になりました。
  • rootlessport ポートフォワーダを使ったルートレスポートフォワーディングは Podman 自身ではなく、別のバイナリによって処理されるようになり、メモリ使用量が大幅に減少しました (#10790).
  • podman system connection ls コマンドは、現在どの接続がデフォルトであるかを示すために、別の出力カラムを持つようになりました (代わりにデフォルト接続の名前に * を追加します) (#12019).
  • podman runpodman create--kernel-memory オプションはアップストリームの OCI ランタイム仕様で非推奨となり、Podman でも非推奨となり、将来のリリースで削除される予定です。このフラグを使うと警告が出ます。
  • Podman は Pods が使う pause イメージをネットワークから引っ張ってくるのではなく、ローカルでビルドするようになりました(podman run --init で使われる既存の catatoinit バイナリを使用します)。これにより、インターネットに接続されていないシステムでも簡単に Pods を利用できるようになります。
  • podman unshare--rootless-cni オプションは --rootless-netns に名前が変更されました。古い名前は新しい名前にエイリアスされ、まだ機能しますが、将来のリリースでは削除されるかもしれません。
  • すべての Podman コマンドのオプションである --cni-config-dir--network-config-dir に名前が変更されました。古い名前は新しい名前にエイリアスされ、まだ機能しますが、将来のリリースでは削除されるかもしれません。
  • すべての Podman コマンドの --format オプションは機能性と Docker との互換性を高めるために変更されました (#10974)。
  • podman ps --external フラグは、以前は --all も指定する必要がありましたが、今後は不要になりました。
  • podman-machine-cni CNI プラグインにあったポートフォワーディングのロジックは Podman に直接統合されました。podman-machine-cni` プラグインは不要になったので削除してください。
  • podman create, podman run, podman pod create--device フラグは、以前は Podman が非 root ユーザーで実行されていてデバイスにアクセスする権限がない場合、マウントを拒否していましたが、現在は権限をチェックせずにマウントします (#12704)。

バグ修正

  • コンテナのネットワークモードと同じ名前(例: host)でネットワークを作成できてしまうバグを修正しました (#11448)。

  • podman save コマンドが保存されたイメージから自動的に署名を削除しないバグを修正しました。

  • 稀な競合状態により、podman run --rm が、安全に削除されているにも関わらず、指定されたコンテナが存在しないというエラーを返すバグを修正しました (#11775)-Podman run --rm` が、稀な競合状態により、安全に削除されているにも関わらず、指定されたコンテナを削除しようとしてエラーを返すバグを修正しました (#11775)

  • コマンド実行中にコンテナが削除されると、稀にレースコンディションにより podman ps がエラーを返すバグを修正しました (#11810)-Podman ps` のコマンドを実行中にコンテナが削除されると、稀にレースコンディションによりエラーを返すバグを修正しました (#11810).

  • CPU に制限のある Kube YAML を podman play kube で実行するとエラーになるバグを修正しました (#11803)。

  • インフラコンテナなしでポッドを作成すると、ポッド作成イベントが生成されないバグを修正しました。

  • z:Z オプションで作成されたボリュームが、コンテナの初回起動時だけでなく、毎回再ラベル化されてしまうバグを修正しました。

  • マニフェストリスト上で podman tag コマンドを実行すると、マニフェストリスト自体ではなく、マニフェスト内のイメージにタグを付けることができるバグを修正しました。

  • フォーマット文字列を含む無効なボリュームオプションを使用してボリュームを作成すると、無意味なエラーが表示されるバグを修正しました。

  • 設定にヘルスチェックを指定したイメージから作成されたコンテナに対して、Podmanがヘルスチェックを作成しないバグを修正しました(#12226)。

  • 健全性チェックの出力が podman inspect で表示されないバグを修正しました (#13083).

  • カスタムのユーザーネーム空間 (例: --userns=keep-id) を使用するルートレスコンテナに、任意のポートがフォワードされないというバグを修正しました。

  • 接続がない場合に podman system connection ls コマンドが(ヘッダを含めて)何も出力しないバグを修正しました。

  • podman createpodman run--memory-swappiness オプションが有効な値として 0 を受け入れないバグを修正しました。

  • Podman の containers.conf で指定した環境変数が適用されないことがあるバグを修正しました (#12296).

  • 同一システム上で異なる設定のルートレスPodmanインスタンスを複数起動すると、単一の共有ルートレスネットワーク名前空間が原因でネットワークの問題が発生するバグを修正しました (#12306)。

  • ブリッジネットワークを使用するルートレスコンテナが /etc/resolv.conf がディレクトリへのシンボリックリンクである場合に失敗するバグを修正しました (#12461)。

  • podman container restore が、チェックポイントされる前に使用していた OCI ランタイムとは異なるランタイムでコンテナをリストアすることがあるバグを修正しました。

  • リモート Podman クライアントの一部のコマンドで --signature-policy オプションが使えるようになっていたバグを修正しました (効果はありません); --signature-policy はリモートクライアントではサポートされていません (#12357)。

  • EXPOSEにポート範囲を指定したイメージを実行できないバグを修正しました (#12293)。

  • Podmanがタグのないイメージ名を :latest タグではなく、ローカルシステムで利用可能なそのイメージのタグに解決してしまうバグを修正しました (#11964).

  • podman createpodman run--blkio-weight-device オプションが非機能であったバグを修正しました。

  • podman generate systemd コマンドが JSON 配列として指定されたコンテナのエントリポイントをサポートしないバグを修正しました (#12477).

  • ルートレスの Podman が、ある状況下で、利用可能な inotify ウォッチを全て使い果たしてしまうバグを修正しました (#11825)。

  • コンテナを --hostname--pod new: オプションの両方で作成すると、ホスト名が破棄されるバグを修正しました。

  • podman network ls がネットワークを表示する順番が決定的にならないバグを修正しました。

  • podman kill コマンドが、kill されたコンテナの ID を表示しないことがあるバグを修正しました。

  • podman machine で作成された VM がホストシステムのタイムゾーンと一致しないバグを修正しました (#11895)-Podman machine` で作成された VM がホストシステムのタイムゾーンと一致しないバグを修正しました (#11895).

  • コンテナのヘルスチェックが、生成された systemd サービスを適切にクリーンアップせず、コンテナの再起動後にヘルスチェックが失敗するバグを修正しました。

  • ビルドが失敗したときに podman build コマンドが Buildah から 0 以外の終了コードを適切に伝搬しないバグを修正しました。

  • リモート Podman クライアントが Windows で実行されていて、コンテナファイルに COPY 命令が含まれている場合に、リモート Podman クライアントの podman build コマンドがイメージのビルドに失敗するバグを修正しました (#13119).

  • リモート Podman クライアントの podman build コマンドの --secret オプションが機能しないバグを修正しました。

  • リモートの Podman クライアントの podman build コマンドにコンテナファイルへの相対パスが与えられるとエラーになるバグを修正しました (#12841 および #12763)-Podman クライアントの podman build コマンドに相対パスが与えられるとエラーになるバグを修正しました。

  • podman generate kube コマンドが、生成される YAML からコンテナで設定された環境変数を省くことがあるバグを修正しました。

  • container.confuserns=auto を設定しても尊重されないバグを修正しました (#12615)。

  • ホストマシンに /etc/hosts ファイルがない場合、podman run コマンドが失敗するバグを修正しました (#12667)。

  • Podman が内部で使用する特定のアノテーションがイメージによって設定され、 podman inspect が正しくない情報を報告するバグを修正しました (#12671).

  • 名前付きボリュームを空のディレクトリにマウントし、その後別のコンテナ内の空でないディレクトリにマウントするとコピーアップされないというバグを修正しました (#12714)。

  • コンテナ上の podman inspect コマンドが、(healthcheck コマンドなどの) 文字列中の特殊文字を URL エンコードしていたバグを修正しました。

  • podman generate kube コマンドが、secret や configmap に含まれないオプションの環境変数を含む YAML を生成してしまうバグを修正しました (#12553)-Podman generate kube` コマンドが、secret や configmap に含まれないオプションの環境変数を含む YAML を生成してしまうバグを修正しました。

  • podman pod create コマンドが containers.conf で指定されたデフォルトの infra イメージを無視するバグを修正しました (#12771)。

  • etc/hostshost.containers.internal エントリが macvlan ネットワークのためのアクセスできないホスト IP に間違って設定されるバグを修正しました (#11351).

  • ユーザーネームスペースに参加するコンテナ (例: --userns=auto) に secret をマウントできないバグを修正しました (#12779)。

  • ルートレスの Podman が既存の Pod 内にコンテナを作成する際に cgroups に関するエラーを出すことがあるバグを修正しました (#10800)。

  • cgroup manager を cgroupfs に設定しているにもかかわらず、Podman が systemd セッションを利用できないというエラーを出すことがあるバグを修正しました (#12802)。

  • Windows 上のリモート Podman クライアントが podman createpodman run--env オプションから環境変数を無視するバグを修正しました (#12056)。

  • ルートレスモードをセットアップしようとしてエラーが発生したときに Podman がセグメンテーションフォールトすることがあるバグを修正しました。

  • 作成タイムスタンプが設定されていないイメージレイヤーを読み込むと、Podmanがsegfaultすることがあるバグを修正しました。

  • PodmanのストレージディレクトリがNFSファイルシステム上にある場合、Podmanが不要なファイルディスクリプタを開いたままにしてしまい、コンテナを削除する際にエラーが発生するバグを修正しました。

  • Podman のストレージディレクトリが NFS ファイルシステム上にある場合、コンテナの exec セッションのクリーンアップに失敗することがあるバグを修正しました。

  • コンテナに対して操作する Podman コマンドに、2つ以上のコンテナを参照することができる部分 ID を与えると、不正なエラーメッセージを出すことがあるバグを修正しました (#12963)。

  • ネットワークに slirp4netns を使用しているコンテナで、podman stats コマンドがネットワークの使用統計を表示しないバグを修正しました (#11695)。

  • コンテナの /dev/shm マウントが、nosuid, noexec, nodev マウントオプションでマウントされないバグを修正しました。

  • podman createpodman run--shm-size オプションが、人間が読めるサイズを KiB ではなく KB、GiB ではなく GB として解釈していたバグを修正しました (キロバイトが 1024 バイトではなく 1000 バイトと解釈されます) (#13096).

  • podman pod create--share=cgroup オプションが、Cgroup 名前空間が共有されるかどうかではなく、ポッドが共有された Cgroup 親を使用するかどうかを制御していたバグを修正しました (#12765)。

  • slirp4netns ネットワークモードを使用する Podman コンテナを systemd ユニットファイル内で実行すると、systemd があるユーザーの全てのコンテナ間で共有されている slirp4netns プロセスを kill することができる (従って、そのユーザーの全ての slirp4netns モードコンテナがインターネット接続できない) というバグを修正しました (#13153).

  • podman network connectpodman network disconnect コマンドがコンテナ内の /etc/resolv.conf を更新して、接続または切断されたネットワークの DNS サーバーを追加または削除しない不具合を修正しました (#9603)。

API

  • Podman リモート API のバージョンが v4.0.0 に更新されました。
  • Compat と Libpod Search endpoints for Images は返される画像の説明を決して切り詰めないようになりました。noTrunc` クエリパラメータは無視されます (#11894).
  • コンテナとポッドの Libpod Top エンドポイントは、stream=true クエリーパラメーターを使ったストリーミング出力をサポートするようになりました (#12115).
  • Libpod Create のボリューム用のエンドポイントは、提供される JSON 設定で LabelLabels の両方でボリュームのラベルを指定できるようになりました (#12102) 。
  • コンテナ用の Compat Create エンドポイントは containers.conf からの cgroup 設定を尊重するようになりました (#12550)。
  • Compat Create endpoint for Containers は、環境変数 PODMAN_USERNS のユーザーネームスペースの設定を尊重するようになりました (#11350)。
  • Containers 用の Compat Create エンドポイントが HostConfig.StorageOpt フィールドを無視していたバグを修正しました (#11016)。
  • コンテナ用のCompat ListエンドポイントがMountsフィールドに値を入力しないバグを修正しました(#12734)。
  • コンテナ用のCompatまたはLibpod Attachエンドポイントを呼び出すと競合状態によりサーバーがクラッシュするバグを修正しました (#12904)。
  • イメージ用の Libpod Prune エンドポイントが、何もプルーニングされていないときに、空の配列ではなく、何も返さないというバグを修正しました。
  • イメージ用のCompat Listエンドポイントが、イメージIDの前にsha256:を付けないバグを修正しました。
  • Compat Push endpoint for Images が size フィールドを含まない JSON を返すバグを修正しました (#12468)。
  • Compat Load endpoint for Images が、複数の画像を含むアーカイブの入力を拒否するバグを修正しました。
  • Compat Build for Imagesのエンドポイントがクエリパラメータ quiet を無視するバグを修正しました (#12566).
  • Compat Build for Imagesのエンドポイントが、aux JSON(ビルドされたイメージのIDを含む)を出力に含めないバグを修正しました(#12063)。
  • Compat BuildのImages用エンドポイントのレスポンスに正しいContent-Typeが設定されていなかったバグを修正しました (#13148).
  • ネットワーク用のCompatおよびLibpod Listエンドポイントが、APIサーバーの起動後にPodman CLIによってサーバー上に作成されたネットワークを返さないことがあるバグを修正しました (#11828)。
  • Compat Inspect endpoint for Networksが返すIPv4とIPv6アドレスにサブネットのCIDRを含めないバグを修正しました。
  • Compat Events エンドポイントが、コンテナの Died イベントの Action フィールドを die に適切に設定しないバグを修正しました(以前は died が使用されていましたが、これは Docker の出力と互換性がありませんでした)。
  • Compat Infoエンドポイントが、設定されたレジストリに関する情報を適切に入力しないバグを修正しました。
  • Compat Events エンドポイントが、コンテナの Died イベントの exitCode フィールドにコンテナの終了コードを正しくセットしていなかったバグを修正しました。
  • Compat Events エンドポイントが TimeNano フィールドに正しく入力されないバグを修正しました。
  • API が Swagger ドキュメントと一致するように、多数の小さな変更が行われました。

その他

  • Github リリースで配布されている Windows インストーラー MSI は 32-bit システムをサポートしなくなりました。
  • Buildah を v1.24.0 に更新しました。
  • containers/image ライブラリを v5.19.0 に更新しました。
  • containers/storage ライブラリを v1.38.1 に更新しました。
  • containers/common ライブラリをv0.47.1へ更新しました。
  • containers/psgo ライブラリをv1.7.2へアップデートしました。

Discussion