Docker磁盘内存:我可以删除中间图像吗?

我正在用完磁盘内存。

如果我运行docker images ,我得到了很多结果:

 app_mongodb latest 355f8f37c385 17 hours ago 568.1 MB app_web latest a31db2244a8b 18 hours ago 868.2 MB <none> <none> 71e586165d46 18 hours ago 568.1 MB <none> <none> 422c281541d3 18 hours ago 568.1 MB <none> <none> 1b16da634fa1 18 hours ago 535.4 MB website_web latest e4442589e2f4 2 days ago 793.6 MB <none> <none> 5445f9b915e6 3 days ago 535.4 MB <none> <none> e825b94d5938 3 days ago 868 MB <none> <none> ea1ddc53d17f 3 days ago 535.4 MB <none> <none> 90531b8bd2d3 5 days ago 855.6 MB <none> <none> 774895648397 5 days ago 535.4 MB <none> <none> 0f474dc179c4 5 days ago 855.6 MB <none> <none> 37cd4d180580 5 days ago 535.4 MB <none> <none> 5f701c2e3fac 5 days ago 535.4 MB <none> <none> 6837158ac191 5 days ago 535.4 MB <none> <none> f3eecd70620e 5 days ago 535.4 MB <none> <none> 27b3e1701f05 5 days ago 535.4 MB <none> <none> 64763f09b1d4 5 days ago 535.4 MB <none> <none> b58542e468e6 5 days ago 855.6 MB app2_web latest 01c45018b686 5 days ago 645.5 MB redis latest e4a35914679d 11 days ago 182.9 MB <none> <none> 8d6737f884f8 12 days ago 854.7 MB <none> <none> 27f7742e8b2b 2 weeks ago 792.1 MB api_web latest 59ec56265675 2 weeks ago 906.4 MB <none> <none> 33c328f5a271 2 weeks ago 782.2 MB <none> <none> 53d4ad25e6c2 2 weeks ago 782.1 MB <none> <none> 01ac14f597ba 2 weeks ago 854 MB app3_web latest 2aaa4675cc58 3 weeks ago 929.9 MB <none> <none> bde15910281e 3 weeks ago 789.5 MB postgres latest ecd991538a0f 4 weeks ago 265.5 MB app4_web latest c8b0de070d78 7 weeks ago 1.088 GB <none> <none> 67e3ef67081b 7 weeks ago 859.2 MB <none> <none> 451229f8dedb 7 weeks ago 859.2 MB server_web latest 72bd5165f262 9 weeks ago 665.4 MB <none> <none> c7f0d2b67986 9 weeks ago 660.9 MB app5_web latest 7477b8e5ef63 3 months ago 690 MB <none> <none> ee7de82e0cf0 3 months ago 856.7 MB mdillon/postgis latest ee2a84576d15 3 months ago 600.2 MB <none> <none> d8ee634a8581 4 months ago 685.3 MB memcached latest 5fdd5c36cc9a 4 months ago 126.1 MB app6_web latest 813fb5eac7d1 5 months ago 823.7 MB app7_web latest 3b6a87b67359 5 months ago 645.5 MB node argon 3b6a87b67359 5 months ago 645.5 MB mongo latest 48b8b08dca4d 6 months ago 366.4 MB ruby 2.2.1 aca1c061bdd2 23 months ago 775.1 MB 

我知道所有命名的docker工人都对应着什么,我可以轻松地pipe理他们,并删除那些我不再需要的东西。 但他们不是多数!

关于其他的,我猜他们是中间docker工人。

我想知道是否删除了这些名称,这个名字是否会被破坏,或者只是重build它们(例如,使用--no-cache选项),docker将不得不重新下载它们? (这很好)

例如。 一个基于ruby的Docker需要它启动还是只需要构build?

这些可能是您过去构build的图像,但是当您重build图像时,相关标记会移动到另一个图像,而不会将这些图像标记为未标记。 因此,它们显示为<none> <none>

看看你的输出的样本,我猜它们中的很多是app_mongodb:latestapp_web:latest旧版本。 根据尺寸。

 app_mongodb latest 355f8f37c385 17 hours ago 568.1 MB app_web latest a31db2244a8b 18 hours ago 868.2 MB <none> <none> 71e586165d46 18 hours ago 568.1 MB <none> <none> 422c281541d3 18 hours ago 568.1 MB <none> <none> 1b16da634fa1 18 hours ago 535.4 MB website_web latest e4442589e2f4 2 days ago 793.6 MB <none> <none> 5445f9b915e6 3 days ago 535.4 MB <none> <none> e825b94d5938 3 days ago 868 MB <none> <none> ea1ddc53d17f 3 days ago 535.4 MB <none> <none> 90531b8bd2d3 5 days ago 855.6 MB <none> <none> 774895648397 5 days ago 535.4 MB <none> <none> 0f474dc179c4 5 days ago 855.6 MB <none> <none> 37cd4d180580 5 days ago 535.4 MB <none> <none> 5f701c2e3fac 5 days ago 535.4 MB <none> <none> 6837158ac191 5 days ago 535.4 MB <none> <none> f3eecd70620e 5 days ago 535.4 MB <none> <none> 27b3e1701f05 5 days ago 535.4 MB <none> <none> 64763f09b1d4 5 days ago 535.4 MB <none> <none> b58542e468e6 5 days ago 855.6 MB 

删除它们最有可能是安全的。 如果你尝试删除它们,并被容器或其他图像使用,那么Doc​​ker会抱怨。

在Docker的最新版本中(我相信> = 1.13),您可以使用prune命令来清理未被映像或容器引用的映像。

 docker image prune