minikube - 容器镜像 "k8s.gcr.io/kube-proxy:v1.22.3" 已经存在于机器上

minikube - Container image "k8s.gcr.io/kube-proxy:v1.22.3" already present on machine

我通过 minikube delete 删除了 minikube 集群,然后删除了 .minikube 文件夹。当我启动 minikube 集群时,我可以看到如下事件消息:

22m         Normal    Scheduled           pod/kube-proxy-b2lqg                            Successfully assigned kube-system/kube-proxy-b2lqg to minikube-m02
22m         Normal    Pulled              pod/kube-proxy-b2lqg                            Container image "k8s.gcr.io/kube-proxy:v1.22.3" already present on machine
22m         Normal    Created             pod/kube-proxy-b2lqg                            Created container kube-proxy
22m         Normal    Started             pod/kube-proxy-b2lqg                            Started container kube-proxy
22m         Normal    SuccessfulCreate    daemonset/kube-proxy                            Created pod: kube-proxy-48qfw
22m         Normal    SuccessfulCreate    daemonset/kube-proxy                            Created pod: kube-proxy-b2lqg

我的问题是容器镜像保存在哪里?我已经删除了 .minikube 文件夹。我检查了我的主机,没有这样的图像。

您将能够在/var/lib/docker/ 目录下查看图像的内容。但是/var/lib/docker/docker目录的内容可能会因存储的驱动docker而异

默认情况下,这将是 aufs,但它可以返回到 overlay、overlay 2 devicemapper 或 zfs,具体取决于您的 keneal 支持。 在大多数情况下,这将是 aufs。 您可以使用 -s 或 –storage-driver 选项手动将存储驱动程序位置设置为 Docker Daemon

/var/lib/docker/{driver-name} 将包含图像内容的驱动程序特定存储。 /var/lib/docker/graph/ 现在只包含关于图像的元数据,在 json 和 layersize 文件

如果是aufs:

/var/lib/docker/aufs/diff/ 有图像的文件内容。 /var/lib/docker/repositories-aufs是包含本地图片信息的JSON文件。这可以用命令 docker images.

查看

如果是 devicemapper:

/var/lib/docker/devicemapper.devicemapper/data 存储图像 /var/lib/docker/devicemapper/metadata 元数据 请注意,这些文件是精简提供的“稀疏”文件,因此它们并没有看起来那么大。

对于MacOS:

Docker 不会在 Mac 上原生 运行 因为 macOS 内核不兼容(即 BSD vs Linux)。 Docker 实际上是 运行ning 在虚拟机中使用 HyperKit。 Docker vm 光盘映像默认为:

$HOME/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/Docker.qcow2

$HOME/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/Docker.raw

取决于您是否选择原始文件系统。所以 /var/lib/docker 的文件夹位置在这个虚拟机内部,而不是在你的 macOS 文件系统上,这就是为什么你不能用 ls

找到它的原因

最重要的是,Docker 图像在 MacOSX 上的确切位置在一段时间内发生了变化。请相应地检查相应的系统。