【发布时间】:2021-05-07 18:25:46
【问题描述】:
Dockerized 数据库将不再启动,因为...
FATAL: could not write lock file "postmaster.pid": No space left on device
我的硬盘上有数百 Gb 可用空间,但我确实相信 某事 空间已用完。在尝试从备份恢复 45Gb 数据库后,这个问题首次出现。在那段时间里,我的Docker.qcow2 文件膨胀到了 60Gb。 Hypervisor 是否对该 VM 文件的大小有一些限制?使用 Docker for Mac。
编辑:
只是想明确一下,我的用例确实需要那么多磁盘空间,但是如果您还没有尝试过 prune,那么请先尝试最受好评的答案。
这似乎是一个线索,当我从docker-compose.yml 中删除这些行时,我以某种方式得到了同样的错误:
volumes:
- website_database_volume:/var/lib/postgresql/data
(是的,我通过弄乱其他属性来检查我是否在文件的正确部分)
docker system df的输出
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 21 16 4.58 GB -7.44e+09 B (-162%)
Containers 827 3 28.69 MB 28.69 MB (99%)
Local Volumes 5 5 57.02 GB 0 B (0%)
【问题讨论】:
-
VirtualBox VM 的默认磁盘大小为 20GB;你把它设置为更大的吗?此外,有些人在这里成功地将 Docker 的内存从 2048(默认)增加到 4096
-
我不认为 VirtualBox 与 Docker For Mac 有关。使用 VirtualBox 软件是一种进入 Hypervisor 引擎盖的方法吗?我真的不能让它拥有更多的内存。另一个链接是关于我没有使用的 boot2docker。
-
@Adamantish 例如,您是否检查过
docker system df是否可以删除任何内容?如果没有什么可以删除,那么我认为你需要调整 qcow2 文件的大小 -
@Salem 谢谢,我刚看了。没有什么大的东西可以回收。所以这是违背他们的承诺吗? docs.docker.com/docker-for-mac/docker-toolbox/… “使用 Docker for Mac,你只得到一个 VM,你不需要管理它。它由 Docker for Mac 应用程序管理。”所以绕过它肯定不会造成麻烦?
标签: docker docker-compose