空间不足 - Docker 镜像过大?

这非常有信息量,谢谢。

在我尝试 cleanup 之前,Discourse 是否提供了一种无需执行恢复即可验证备份完整性的方法?

du -hx / | sort -h | tail -49 的输出结果(我发现 -h 选项让结果更容易解析):

833M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/42/fs/var/www/discourse/vendor/bundle/ruby
833M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/42/fs/var/www/discourse/vendor/bundle/ruby/3.4.0
837M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/283/fs/var
837M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/283/fs/var/www
837M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/283/fs/var/www/discourse
837M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/283/fs/var/www/discourse/vendor
837M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/283/fs/var/www/discourse/vendor/bundle
837M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/283/fs/var/www/discourse/vendor/bundle/ruby
837M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/283/fs/var/www/discourse/vendor/bundle/ruby/3.4.0
839M	/var/discourse/shared
839M	/var/discourse/shared/standalone
840M	/var/discourse
863M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/42
863M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/42/fs
868M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/283
868M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/283/fs
874M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/284
874M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/284/fs
874M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/43
874M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/43/fs
908M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/263/fs/usr
925M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/22/fs/usr
944M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/263
944M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/263/fs
961M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/22
961M	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/22/fs
1.3G	/usr
1.4G	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/251
1.4G	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/251/fs
1.4G	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/251/fs/var
1.4G	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/251/fs/var/www
1.4G	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/251/fs/var/www/discourse
1.5G	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/227/fs/var
1.5G	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/227/fs/var/www
1.5G	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/227/fs/var/www/discourse
1.6G	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/227
1.6G	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/227/fs
2.5G	/var/log
2.5G	/var/log/journal
2.5G	/var/log/journal/1d9299c9656046d6bd0e18d4a09c183c
2.7G	/var/lib/containerd/io.containerd.content.v1.content
2.7G	/var/lib/containerd/io.containerd.content.v1.content/blobs
2.7G	/var/lib/containerd/io.containerd.content.v1.content/blobs/sha256
9.8G	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs
9.8G	/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots
13G	/var/lib
13G	/var/lib/containerd
17G	/var
20G	/

docker volume ls -qf dangling=true 的输出为空。实际上,docker volume ls 也是空的。

docker images -a 的输出:

IMAGE                              ID             DISK USAGE   CONTENT SIZE   EXTRA
discourse/base:2.0.20260209-1300   50d2dae489a9       4.77GB         1.12GB        
discourse/base:2.0.20260521-0047   27373b823bbe       4.89GB         1.17GB        
local_discourse/app:latest         01527763be8d        6.9GB         1.63GB    U   

我对 Docker 的了解不足以诊断这些输出,但如果 /var/log/ 仅包含日志,其大小似乎有点大。另外,我只有一个论坛在运行,却有三个镜像,这很有趣(当然,这也可能是完全正常的)。

感谢您关于增加存储空间的建议。我可能会进行扩容,但在这样做之前,这也是一次很好的学习经历。