![](/img/trans.png)
[英]Logstash docker container filling up the root disk space in overley2 folder
[英]gcloud emulator rapidly filling up all Docker disk space
我正在使用 Google Cloud Run 模拟器( glcoud beta code dev
),它工作正常......
...直到我使用它几天后,它已经消耗了我分配给 Docker (60 GB.) 的所有硬盘空间,并且无法再运行。
然后,我使用docker system prune --all --force --volumes
手动强制清除 Docker 的磁盘空间。
有没有办法告诉gcloud
在关闭模拟器时自动清除它写入的所有文件?
也许我错过了一面旗帜? 或者也许我以错误的方式关闭? 我目前正在通过终端上的ctrl+C
停止模拟器。
编辑:如果它有帮助,我想我知道是什么导致了填充:
我正在使用 GCR 提供网页,并在我的 Dockerfile 中。 每次我进行更改时,gcloud 模拟器都会重建容器。 我认为每次重建都会重新复制所有资产(图像、音频),这就是它占用如此多磁盘空间的原因。
编辑 2: Docker 显示glcoud-local-dev
in-use
即使我已经从命令行按ctrl+C
关闭了模拟器。
正如您所说,您可以使用以下命令一次删除所有未使用的容器、卷、网络和映像:
docker system prune -a -f --volumes
如果这还不够,可以从删除操作容器开始:
docker rm -f $(docker ps -a -q) docker system prune -a -f --volumes
使用具有额外空间的不同站点也是解决此问题的可行选择。
目前,最佳实践是运行以下命令: docker system prune
在您接受后果之前,请注意此命令中的 output:
警告:这将删除? - 所有停止的容器 - 至少一个容器未使用的所有网络 - 所有悬空图像 - 所有悬空构建缓存 确定要继续吗? [是/否]
换句话说,继续使用这个命令是不可逆的。 请记住,推荐的做法是将停止的容器视为 ephemeral ,这意味着您应该设计 Docker 作业以避免保留它们。 如果您没有主动调试容器,您可能希望在运行时使用--rm 标志。
根据gcloud beta code dev ,它还没有提到任何可以阻止您的主要问题的标志。 请注意,此命令目前处于测试阶段,可能会更改,恕不另行通知。 最后更新于 2021 年 10 月 19 日。
此变体也可用: gcloud alpha code dev
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.