Docker使用图像来启动新容器。新的容器将使用现有的图像,并为自定义零件添加新的层。在本教程中,我们将了解如何管理docker图像。
列出Docker图像
在删除Docker图像之前,我们通常需要列出这些图像。我们将使用 list
命令以列出当前存在的Docker图像。
$ sudo docker images
删除特定Docker映像
移除Docker映像的第一个示例是移除单个映像。我们需要用名称或图像id指定图像。我们将使用 rmi
命令,它是删除图像的快捷方式。在本例中,我们将删除名为 ubuntu
.
$ sudo docker rmi ubuntu
我们可以从输出中看到,与ubuntu图像相关的所有层都被删除了。在下面的示例中,我们将提供图像id。
$ sudo docker rmi 3bee3060bfc8
列出悬挂的Docker图像
正如我们所知,docker图像由不同的层组成。这些层由多个或单个图像使用。有时层可以与任何图像无关。我们可以列出这些未使用和不相关的docker图像层 -f
和 dangling=true
选项。
$ docker images -f dangling=true
删除悬挂的Docker图像
我们可以通过逐个输入docker图像id来删除悬空图像 但这不是一个可行的解决办法。我们可以列出码头工人的身份证 -q
参数。
$ docker rmi $(docker images -f dangling=true -q)
列出具有指定名称和正则表达式的Docker图像
在企业环境中,我们需要处理很多图像。我们可以使用模式搜索或正则表达式 grep
用于筛选和列出特定命名图像的工具。在本例中,我们将列出包含 buntu
以他们的名义。
$ sudo docker images | grep "buntu"
删除具有指定名称和正则表达式的Docker映像
我们可以用 rmi
删除具有指定名称或模式的docker图像。在本例中,我们将删除这些名称具有的图像 buntu
.
$ docker images | grep "buntu" | awk '{print $1}' | xargs docker rmi
列出所有Docker图像
我们可以用 -a
选项列出所有docker图像。
$ docker images -a
删除所有Docker图像
我们也可以像前面的例子一样使用类似的技术删除所有docker图像。我们将提供图像id给 rmi
命令。
$ docker rmi $(docker images -a -q)
相关文章: Linux rm命令教程及示例