编辑4:我打开了一个问题:https://issuetracker.google.com/issues/219164388
我正在使用Google运行模拟器(glcoud beta code dev),它工作得很好.
...until使用了几天之后,它占用了我分配给Docker的所有硬盘空间(60 GB!)再也跑不掉了。
然后,我使用docker system prune --all --force --volumes手动强制清除Docker的磁盘空间。
是否有一种方法可以让gcloud 在关闭模拟器时自动清除它所写的所有文件?
也许我失踪了一面旗子?还是我走错路了?我目前正在通过ctrl+C从终端停止仿真器。
编辑3:正如下面的答案所指出的,我需要的是相当于docker --rm的东西,但是对于gcloud来说。
编辑:如果有帮助的话,我想我知道是什么导致了填充:
我正在使用GCR服务网页,并在我的Dockerfile中。每次我进行更改时,gcloud仿真器都会重新构建容器。我认为每次重建后,它都会重新复制所有的资产(图像、音频),这就是它占用这么多磁盘空间的原因。
编辑2:即使在glcoud-local-dev从命令行关闭了模拟器之后,Docker仍然将in-use显示为in-use。
发布于 2022-02-02 20:17:47
如前所述,您可以使用以下命令一次性删除所有未使用的容器、卷、网络和图像:
docker system prune -a -f --volumes如果这还不够,可以从移除操作容器开始:
docker rm -f $(docker ps -a -q) docker system prune -a -f --volumes使用具有额外空间的不同站点也是解决此问题的可行选择。
目前,最佳实践是运行以下命令:docker system prune
在接受结果之前,请注意此命令的输出:
警告!这将删除:-所有停止的容器-所有网络没有使用至少一个容器-所有悬空的图像-所有悬空的构建缓存,您确定要继续吗?y/N
换句话说,继续使用这个命令是不可逆转的。请记住,建议的做法是对待停止的容器是短暂的,这意味着您应该设计您的码头工作,以避免他们在身边。如果没有主动调试容器,则可能希望在运行时使用-rm旗。
根据gcloud beta代码开发的说法,它还没有提到任何可以阻止你的主要问题的标志。请考虑此命令目前处于测试版,可能会在没有通知的情况下更改。最后一次更新是在2021-10-19年。
此变体也可用:gcloud alpha代码开发
https://stackoverflow.com/questions/70943738
复制相似问题