我已经构建了一个非常大的图像(1G),其中有很多"基础设施"用于测试(Mongo,Kafka等)
尝试启动时,设备错误没有剩余空间.我怎样才能解决这个问题?
我已经清除了已停止的图像并删除了我并不绝对需要的任何图像.
小智 38
如果您在no space left on device
使用Docker时遇到错误,您可以轻松解决此问题system prune
.
我使用Docker for Mac 17.03.
使用docker UP和所有容器RUNNING,执行 docker system prune -a
这应该给出以下对话框:
WARNING! This will remove:
- all stopped containers
- all volumes not used by at least one container
- all networks not used by at least one container
- all images without at least one container associated to them Are you sure you want to continue? [y/N]
Run Code Online (Sandbox Code Playgroud)
然后按y删除大量容器,结束(在我的情况下): Total reclaimed space: 23.26 GB.
现在你甚至可以在没有重启docker的情况下重新开始工作!
Qde*_*eep 34
您可以在" 磁盘"选项卡中的Docker for Mac的"首选项"中调整虚拟磁盘映像大小.这将增加空间而不会丢失数据.
检查您的docker目录以找到您的问题(在MAC上这将是不同的,但相同的方法可能会有所帮助)
du -hs /var/lib/docker
Run Code Online (Sandbox Code Playgroud)
通过在以下子文件夹上执行相同的命令,您可以查看哪个文件夹占用了大量磁盘空间/var/lib/docker
:
对于/var/lib/docker/volumes
:您必须删除" 孤立 "卷.您还可以使用docker volume ls -qf dangling=true
检查卷.要删除孤立卷:docker volume rm $(docker volume ls -qf dangling=true)
因为/var/lib/docker/containers
您必须检查是否有很多已停止(或正在运行)的容器,其中包含docker ps
=正在运行的容器和docker ps -a
=所有容器(运行和停止).删除已停止的容器:docker rm -v $(docker ps -aq)
.该-v
标志将自动删除容器的卷
对于/var/lib/docker/images
您可以通过删除所有未使用的图像docker rmi $(docker images --filter "dangling=true" -q --no-trunc)
还要检查GitHub以找到一些非常有用的脚本,这些脚本会删除未使用的图像/容器/卷.
尝试增加磁盘空间。这对我有用。Docker -> 首选项 -> 磁盘 -> 磁盘映像大小(增加它) -> 应用
归档时间: |
|
查看次数: |
13973 次 |
最近记录: |