Once, the automatic Backup of my WordPress site stopped working. Then, I tried to login to WordPress, but it was no longer possible.
Then I realized that my Backup device was Google Drive, which is quite big. So this might not be the root cause of the problem.
I started with the usual searches, e.g. the problem was probably with some Plugins. But all the actions didn’t work out.
As I have set up WordPress via Docker Containers, I was testing the staging WordPress system. That worked.
So I looked at the Docker setup, purging images, volumes, stopping containers, etc. No change.
Then I found that the inodes were at 100%. That was the problem. First, I found that some versions of docker had a problem generating dangling inodes. No success.
The following commands helped me find out, where the inodes/Files were generated.
# find the 50 directories with the biggest file count
find /var/lib/docker -xdev -printf '%h\n' | sort | uniq -c | sort -rn | head -50
# get the file storage usage
df -h
# get the inode usage
df -hi
# get the number of inodes in a directory
du --inodes -d 1
Finally, we found that in the following directory were over 7 million files:
/var/lib/docker/volumes/wp_production_wordpress0/_data/cache
This folder is generated by my Caching WordPress Plugin W3 Total Cache, and it seems that this folder is never purged.
After deleting the files in this folder, everything worked well again.
Maybe I create a corn job, deleting that folder once a week.
Logrotate
As I was just busy with fixing, I also configured the logrotate via docker, as I first thought, that too many log files were generated.
The following pages helped:
https://opvizor.com/blog/prevent-docker-host-to-run-out-of-disk-space
https://docs.docker.com/engine/logging/configure
https://signoz.io/blog/docker-log-rotation
https://techkluster.com/docker/questions-docker/how-to-clear-docker-cache