Docker容器占用了过多的磁盘存储空间

时间:2019-01-30 08:35:25

标签: docker docker-compose vps

我曾经使用 df -hl 检查我的vps的状态,但是似乎该存储空间由docker mutil time占用(我在该vps中只有1个wordpress,没有其他项目)

今天我从linode收到一封电子邮件,他们告诉我我的存储已完成

总计:25600 MB 已使用:25600 MB

我在此vps中有一个wordpress,它是由docker和wordpress构建的

这是我的vps中的代码

root@localhost:~# df -hl
Filesystem      Size  Used Avail Use% Mounted on
udev            463M     0  463M   0% /dev
tmpfs            99M  5.9M   93M   6% /run
/dev/sda         25G  5.0G   19G  22% /
tmpfs           493M     0  493M   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           493M     0  493M   0% /sys/fs/cgroup
overlay          25G  5.0G   19G  22% /var/lib/docker/overlay2/2ebf8af06fccd1e3a455746e257c990e6d85f848832eaadd636f48d56e6fbefb/merged
overlay          25G  5.0G   19G  22% /var/lib/docker/overlay2/28044ad06cc4b50d58a331cd644a254c7c90480ad04c1686f2974503da1c98de/merged
shm              64M     0   64M   0% /var/lib/docker/containers/932928ba7b7ccbbb4dd9f05263fadda8c6764ec7185deefc37c0fc555a2c32d5/mounts/shm
shm              64M     0   64M   0% /var/lib/docker/containers/67d10956ef387af8327570b7013cc113114a48ccf3654f9ee01041e88e740192/mounts/shm
overlay          25G  5.0G   19G  22% /var/lib/docker/overlay2/b81fd707a47702b060b462fbb1424bf024c4e593071b0782f4c817ca46a188e2/merged
shm              64M     0   64M   0% /var/lib/docker/containers/ce2422fff8741ede110a730d1283e0f43792de05a14b2ae9bdb59874fefa5fc2/mounts/shm
tmpfs            99M     0   99M   0% /run/user/0

root@localhost:~# docker ps -a

CONTAINER ID        IMAGE                   COMMAND                  CREATED             STATUS              PORTS                            NAMES
932928ba7b7c        wordpress:latest        "docker-entrypoint.s…"   7 weeks ago         Up 2 weeks          0.0.0.0:1994->80/tcp             jujuzone_site
67d10956ef38        phpmyadmin/phpmyadmin   "/run.sh supervisord…"   7 weeks ago         Up 2 weeks          9000/tcp, 0.0.0.0:8081->80/tcp   phpmyadmin
ce2422fff874        mysql:5.7               "docker-entrypoint.s…"   7 weeks ago         Up 4 hours          3306/tcp, 33060/tcp              db_jujuzone
root@localhost:~# docker system prune
WARNING! This will remove:
        - all stopped containers
        - all networks not used by at least one container
        - all dangling images
        - all dangling build cache
Are you sure you want to continue? [y/N] y
Total reclaimed space: 0B

2 个答案:

答案 0 :(得分:1)

似乎您已删除了一些系统可能仍在使用的文件。
请记住,在这种情况下,df命令可以显示与du命令不同的大小。
您可以在同一目录上使用du -hc来进行更精确的检查,并检查其总数是否与df命令不同。
您也可以运行lsof |grep '(deleted)'来验证哪些文件处于打开状态以供文件描述符使用。
在这种情况下,您可以终止此过程并重新启动负责的守护程序。
毕竟,您必须考虑使用带有docker system prune标志的-a来清除未使用的图像,并可能回收更多的空间。

答案 1 :(得分:0)

我最近在Docker v19.03.13的Ubuntu 20.04上遇到了同样的问题。我搜索了Docker文档,发现这可能是因为他们引入了一种新型的文件系统。您可以从here了解更多信息。我修复它的方法是编辑(创建(如果不存在的话))/etc/docker/daemon.json文件并添加以下行:

{
  "storage-driver": "overlay"
}

然后使用以下命令重新启动docker:

sudo systemctl restart docker

我已经回答了类似的问题here

相关问题