Docker Verschieben von /var/lib/docker

Da auf meinem Server einige Container laufen, wurde durch mein Rollout des Containers Tubearchivist der Platz langsam eng.

Hier habe ich mich entschlossen, den Standardspeicherplatz von Docker auf eine der 6 TB Datenpools zu verschieben. Das Umschreiben des Servicekonfigurationsdatei innerhalb von SystemD wäre hier der falsche Weg. Der richtige Weg ist hier JSON-Konfigurationsdatei des Daemon von Docker umzuschreiben. Falls diese noch nicht angelegt ist, muss diese angelegt werden.

Erstellen des neuen Datenspeicherplatzes für Docker

mkdir /data/IronWolf1/DOCKER_DATA

Stoppen des Dockerdienstes

systemctl stop docker && systemctl status docker && docker ps

Kopieren der Daten in das neue Verzeichnis

rsync -avxP /var/lib/docker/ /data/IronWolf1/DOCKER_DATA

Erstellen der Datei /etc/docker/daemon.json

{
"data-root": "/data/IronWolf1/DOCKER_DATA"
}

Neustarten des Dienstes Docker

systemctl restart docker.service

Überprüfen, ob der Standardspeicherort übernommen wurde. Hierzu habe ich Vaultwarden als Beispiel genommen

docker inspect vaultwarden/server:latest |grep WorkDir
"WorkDir": "/data/IronWolf1/DOCKER_DATA/overlay2/b419d698e9ba693188a2f517f53891702a25ea20f974993aca879206818ab328/work"

Der Inhalt des alten Verzeichnisses /var/lib/docker kann nun gelöscht werden