Docker イメージにインストールされているパッケージのバージョンを確認する方法はありますか?

Docker イメージにインストールされているパッケージのバージョンを確認する方法はありますか?

いくつかのパッケージをインストールする Dockerfile からイメージを作成しています。

wgetたとえば、サンプルパッケージとしてwith を使用します。

RUN apt-get update -y && \ 
  apt-get install -y --no-install-recommends wget

常に最新バージョンのパッケージでビルドしたいのですが (手動で指定する必要はありません)、CI 検証のためにイメージ内のバージョンを知る必要があります。具体的には、最新のパッケージをプルし、パッケージのバージョンが変更された場合に CI から通知されるようにしたいです。

編集: これは不可能のようです (https://github.com/moby/moby/issues/29110)。

答え1

パッケージをファイルに書き込んで、CI スクリプトでそのファイルを解析するのはどうでしょうか?

apt list --installed > installed_packages

docker exec -it <mycontainer> cat installed_packages

関連情報