Ich bin gestern auf was gestossen. Ich betreibe einen kleinen Server mit einer Mastodon Instanz mit nur mir als User. Der Server auf dem dies läuft ist ein Ubuntu 16.04 LTS.
Das neue Mastodon Docker Image hat einen Entrypoint der bei jedem Aufruf des Containers erstmal einen Haufen Files nach ihren Benutzerrechten abfragt und diese dann gegebenenfalls ändert. Dies hat beim letzten Update dann einfach Stunden gedauert, da bei jeder Datenbank-Migration oder Assert-Kompilierung erstmal wieder alle Files durchkämmt wurden. Ein Graus. Ein wenig in den Bugreports von Mastodon geschaut und auch was gefunden. Anscheinend liegt das an dem Storagedriver overlay2
und mit aufs
sollte dies "viel schneller" gehen. Unter Ubuntu Zesty ist aufs
wohl auch der Default. Nun unter 16.04 sieht man davon nichts. Dies kann man mit grep aufs /proc/filesystems
überprüfen. Es gibt aber einen Weg...
Mit sudo apt-get install linux-image-extra-$(uname -r) linux-image-extra-virtual
die passenden Pakete installieren
Mit sudo modprobe aufs
das Kernelmodul laden
grep aufs /proc/filesystems
sollte nun was auswerfen
Das File /etc/docker/daemon.conf
so anpassen das auch wirklich aufs
genutzt wird
{
"storage-driver": "aufs"
}
Docker neu starten mit service docker restart
Mit docker info
überprüfen ob wirklich aufs
genutzt wird
aufs
zu /etc/modules
hinzufügen damit es auch nach einem Neustart funktioniert
Nun kann /var/lib/docker/overlay2
gelöscht werden. Alle Images müssen nun neu heruntergeladen oder gebaut werden