检查我是否使用的是 slim(debian 操作系统)映像

检查我是否使用的是 slim(debian 操作系统)映像

假设我跑

docker run --rm -ti --entrypoint bash test-image

我知道这是基于debian:bullseye但我没有关于该图像的其他信息。

$ cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 11 (bullseye)"
NAME="Debian GNU/Linux"
VERSION_ID="11"
VERSION="11 (bullseye)"
VERSION_CODENAME=bullseye
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

有没有一种方法(操作系统方面)来检查这是否是slim完整版本的 docker 镜像?

例如,也许检查一些不应该在slim图像中找到的包?

答案1

实际上没有任何方法可以保证您可能使用了哪个图像。我通常使用最小的网络安装用于构建系统的图像,然后添加我想要的所有包。有时,这可能最终是一个完整的图形安装,但大多数情况下它是一个适合目标预期用途的构建(以及我的一组首选实用程序包)。

您可以使用dpkg(或dpkg-query) 来确定是否安装了特定的软件包。可能有更好的方法,但这种方法对我有用:

dpkg -l 'rsync' | grep '^ii'    # Indication that 'rsync' is installed
dpkg -l 'ls*' | grep '^ii'      # List of matching installed packages

请参阅动词man dpkg-query下方--list了解更多详细信息

相关内容