1

尝试了以下命令,但都没有删除图像。

sudo docker images prune --filter "dangling=true"
sudo docker images prune --all
sudo docker images prune -a
sudo docker images prune

两个命令的输出:

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

码头工人版本:

$ sudo docker version
Client:
Version:      1.12.6
API version:  1.24
Go version:   go1.6.4
Git commit:   78d1802
Built:        Tue Jan 10 20:26:30 2017
OS/Arch:      linux/amd64

Server:
Version:      1.12.6
API version:  1.24
Go version:   go1.6.4
Git commit:   78d1802
Built:        Tue Jan 10 20:26:30 2017
OS/Arch:      linux/amd64 

Docker doc建议使用此命令,但我遇到错误

$ sudo docker image prune -a
docker: 'image' is not a docker command.
See 'docker --help'.`
4

2 回答 2

2

你应该使用docker image prune --filter "dangling=true". 它应该image代替images.

另请注意,在删除悬空图像的情况下,您不需要指定过滤器,因为默认情况下prune 命令会删除悬空图像:

删除所有悬空图像。如果指定了 -a,还将删除任何容器未引用的所有图像。

于 2018-06-14T07:52:50.577 回答
2

查看docker image pruneAPI 1.25 - 对于 Docker Engine 1.13,API 版本为 1.25

删除未使用的图像

客户端和守护程序 API 必须至少为 1.25 才能使用此命令。在客户端上使用 docker version 命令检查您的客户端和守护程序 API 版本。

你正在运行Version: 1.12.6API version: 1.24,所以你需要更新你的版本才能运行docker image prune

如果您不想(或不能)升级,您可以使用没有指定 API 版本的docker rmidocker image rm ,所以我希望两者都能工作。

于 2018-06-14T17:46:36.797 回答