当容器变成垃圾桶

容器确实很棒,功能强大,并且对现代开发人员很有用,但是如果您不介意的话,那些未使用的容器会很快从容器变成垃圾桶,从而使您的开发环境变得笨拙

容器是如此真棒。

在使用容器之前,如果您想尝试一些新技术,则必须遍历振铃器以配置和安装所有适当的依赖项,设置适当的基础结构,并在你的机器上堆满大量的垃圾,而这些垃圾可能是你以后不想用的。值得庆幸的是,Docker和其他容器化技术应运而生,使开发人员能够将单行代码放到命令行中,就像魔术一样,整个世界都出现在一个神奇的小盒子中。

几天前,我脑子里有了一个主意,于是我遍历Docker Hub寻找完美的容器,里面有我想要的一切。我会拉取一个,修补一下,丢弃。拉取另一个,尝试其他操作,然后最终将其丢弃。再拉取一个,然后...废话!

docker: write /var/lib/docker/tmp/GetImageBlob785934359: no space left on device. 

我的设备上没有剩余空间了吗?奇怪,也许是我下载了供孩子们观看的公路旅行视频,或者是我安装的所有那些电脑游戏,但是却找不到时间玩(某天)?让我检查一下硬盘驱动器,看看外观如何:

好的,所以我要拉取的镜像确实很大,或者发生了其他情况。经过一番思考之后,我意识到,就像所有不想让机器接管的好人一样,委派了一定数量的空间和资源以供Docker充分利用,并且可以肯定的是,我才是正确的。

现在是时候清除垃圾了,但是由于docker dump trash不是合法命令(至少是开箱即用的),我只需要快速修剪(prune)一下即可:

docker system prune 

简而言之,prune命令执行以下操作:

  • 删除所有非运行/停止的容器
  • 删除所有未被使用的卷(至少一个活动容器)
  • 删除所有未被使用的网络(至少由一个活动容器使用)
  • 删除系统中所有悬空的镜像。

既然我在上面提到过我真的很喜欢玩容器,所以我认为我们可以直接使用它,所以这是在本地计算机上的样子:

用三个字,我设法在22个容器,5个网络和45个镜像中释放了将近126GB的未使用空间。这确实令人印象深刻,但更重要的是,我随后能够立即安装我尝试安装的镜像。

因此,故事的寓意是这样的:容器确实很棒,功能强大,并且对现代开发人员很有用,但是如果您不介意的话,那些未使用的容器会很快从容器变成垃圾桶,从而使您的开发环境成为一个臭臭的地方工作。

发布了69 篇原创文章 · 获赞 146 · 访问量 49万+

猜你喜欢

转载自blog.csdn.net/mzl87/article/details/104978392