Isso é muito informativo, obrigado.
Antes de tentar o cleanup, o Discourse oferece uma maneira de verificar a integridade do backup sem precisar fazer uma restauração?
O resultado de du -hx / | sort -h | tail -49 (encontrei que a opção -h facilitou a interpretação dos resultados para mim):
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 /
A saída de docker volume ls -qf dangling=true estava vazia. Na verdade, docker volume ls também está vazio.
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
Sei muito pouco sobre Docker para diagnosticar essa saída, mas /var/log/ parece um pouco grande se for apenas para logs, e é interessante ter 3 imagens quando tenho apenas 1 fórum rodando (embora isso possa ser totalmente esperado).
Agradeço a observação sobre mais espaço de armazenamento. Provavelmente vou expandir, mas isso é uma boa experiência de aprendizado antes de fazê-lo.