admin_grundlagen:docker:btrfs
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
| Beide Seiten, vorherige ÜberarbeitungVorherige ÜberarbeitungNächste Überarbeitung | Vorherige Überarbeitung | ||
| admin_grundlagen:docker:btrfs [2026/02/25 16:35] – ingo_wichmann | admin_grundlagen:docker:btrfs [2026/05/03 09:07] (aktuell) – ingo_wichmann | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| ====== Docker mit BTRFS als Storage ====== | ====== Docker mit BTRFS als Storage ====== | ||
| + | Hier geht es darum, alles was in Docker ist mit Snapshots sichern zu können. Und nicht um [[https:// | ||
| ===== BTRFS vorbereiten ===== | ===== BTRFS vorbereiten ===== | ||
| Zeile 14: | Zeile 15: | ||
| * Freie Partition oder freies Logical Volume | * Freie Partition oder freies Logical Volume | ||
| + | du -sh / | ||
| lsblk | lsblk | ||
| - | | + | -> Blockdevice mit genug Platz wählen. |
| + | | ||
| -> UUID merken, kommt später in die ''/ | -> UUID merken, kommt später in die ''/ | ||
| - | mount -m /dev/sdaX /mnt/btrfs | + | mount -m /dev/xxx /mnt/btrfs |
| cd /mnt/btrfs | cd /mnt/btrfs | ||
| btrfs subvolume create $(date ' | btrfs subvolume create $(date ' | ||
| - | btrfs subvolume show $(date ' | ||
| - | -> Subvolume ID merken | ||
| btrfs subvolume set-default $(date ' | btrfs subvolume set-default $(date ' | ||
| Zeile 31: | Zeile 32: | ||
| systemctl stop docker.socket docker.service containerd.service | systemctl stop docker.socket docker.service containerd.service | ||
| - | systemctl stop containerd.service | ||
| <file txt / | <file txt / | ||
| - | version = 2 | + | … |
| root = "/ | root = "/ | ||
| + | … | ||
| </ | </ | ||
| cd /var/lib | cd /var/lib | ||
| Zeile 41: | Zeile 42: | ||
| ===== Docker Daten in BTRFS verschieben ===== | ===== Docker Daten in BTRFS verschieben ===== | ||
| - | systemctl stop docker.socket docker.service | + | systemctl stop docker.socket docker.service containerd.service |
| cd /var/lib/ | cd /var/lib/ | ||
| - | du -sh docker | ||
| - | df -h . | ||
| - | -> ist genug Platz für ein Backup? | ||
| - | tar -caf docker.tar.zst docker/ | ||
| shopt -s dotglob | shopt -s dotglob | ||
| - | | + | |
| <file txt / | <file txt / | ||
| … | … | ||
| - | # device during installation: | + | # device during installation: |
| UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx / | UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx / | ||
| UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /mnt/btrfs btrfs noauto, | UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /mnt/btrfs btrfs noauto, | ||
| </ | </ | ||
| mount -av | mount -av | ||
| - | tar -xf docker.tar.zst | ||
| - | rm docker.tar.zst | ||
| + | systemctl start docker.socket docker.service containerd.service | ||
| + | ++++ ohne containerd: | | ||
| systemctl start docker.socket docker.socket | systemctl start docker.socket docker.socket | ||
| + | ++++ | ||
| ===== Snapshot erstellen ===== | ===== Snapshot erstellen ===== | ||
| aktuell aktives Docker-Subvolume ermitteln: | aktuell aktives Docker-Subvolume ermitteln: | ||
| Zeile 67: | Zeile 64: | ||
| cd /mnt/btrfs | cd /mnt/btrfs | ||
| btrfs subvolume get-default . | btrfs subvolume get-default . | ||
| - | -> ID 472 gen 428819 top level 5 path **20xxxxxx00** | + | -> Subvolume merken: '' |
| - | Container stoppen: | + | === Container stoppen |
| - | systemctl stop docker.socket docker.service | + | systemctl stop docker.socket docker.service |
| - | Snapshot erstellen | + | ++++ ohne containerd: | |
| + | systemctl stop docker.socket docker.socket | ||
| + | ++++ | ||
| + | === Snapshot erstellen | ||
| btrfs subvolume snapshot 20xxxxxx00 $(date ' | btrfs subvolume snapshot 20xxxxxx00 $(date ' | ||
| - | Container starten: | + | |
| - | systemctl start docker.socket | + | === Container starten |
| + | systemctl start docker.socket docker.service containerd.service | ||
| + | ++++ ohne containerd: | | ||
| + | systemctl start docker.socket | ||
| + | ++++ | ||
| + | === Starten überprüfen === | ||
| watch docker ps | watch docker ps | ||
| - | |||
| - | ====== Docker mit BTRFS statt overlay ====== | ||
| - | siehe auch https:// | ||
| - | <code json / | ||
| - | { | ||
| - | " | ||
| - | } | ||
| - | </ | ||
| - | systemctl start docker.socket | ||
| - | systemctl start docker.service | ||
| - | |||
| - | prüfen: | ||
| - | docker info | ||
| - | -> '' | ||
admin_grundlagen/docker/btrfs.1772037303.txt.gz · Zuletzt geändert: 2026/02/25 16:35 von ingo_wichmann
