Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
admin_grundlagen:docker_mit_btrfs [2025/02/02 21:40] ingo_wichmann [Docker mit BTRFS als Storage] |
admin_grundlagen:docker_mit_btrfs [2025/04/01 11:02] (aktuell) ingo_wichmann |
||
---|---|---|---|
Zeile 2: | Zeile 2: | ||
siehe auch https://docs.docker.com/storage/storagedriver/btrfs-driver/ | siehe auch https://docs.docker.com/storage/storagedriver/btrfs-driver/ | ||
+ | ===== BTRFS vorbereiten ===== | ||
Voraussetzungen: | Voraussetzungen: | ||
* kernel unterstützt BTRFS (( | * kernel unterstützt BTRFS (( | ||
Zeile 15: | Zeile 16: | ||
lsblk | lsblk | ||
+ | mkfs.btrfs /dev/sdaX | ||
+ | -> UUID merken, kommt später in die ''/etc/fstab'' | ||
+ | mkdir /mnt/btrfs | ||
+ | mount /dev/sdaX /mnt/btrfs | ||
+ | cd /mnt/btrfs | ||
+ | btrfs subvolume create $(date '+%Y%m%d') | ||
+ | -> Subvolume ID merken und bei XXX einsetzen: | ||
+ | btrfs subvolume set-default XXX $(date '+%Y%m%d')/ | ||
===== Docker Daten in BTRFS verschieben ===== | ===== Docker Daten in BTRFS verschieben ===== | ||
Zeile 24: | Zeile 33: | ||
shopt -s dotglob | shopt -s dotglob | ||
rm -rf docker/* | rm -rf docker/* | ||
- | mkfs.btrfs /dev/sdaX | ||
- | -> UUID in die Zwischenablage kopieren | ||
<file txt /etc/fstab> | <file txt /etc/fstab> | ||
… | … | ||
# device during installation: /dev/sdaX | # device during installation: /dev/sdaX | ||
- | UUID=d29a1a5f-14e1-4324-86e4-8175de675f88 /var/lib/docker btrfs rw,relatime,ssd,space_cache=v2,subvolid=5,subvol=/ 0 0 | + | UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /var/lib/docker btrfs rw 0 2 |
+ | UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /mnt/btrfs btrfs noauto,subvolid=5,subvol=/ 0 2 | ||
</file> | </file> | ||
mount -av | mount -av | ||
tar -xf docker.tar.zst | tar -xf docker.tar.zst | ||
+ | rm docker.tar.zst | ||
+ | |||
+ | ===== Snapshot erstellen ===== | ||
+ | systemctl stop docker.socket | ||
+ | systemctl stop docker.service | ||
+ | mount /mnt/btrfs | ||
+ | cd /mnt/btrfs | ||
+ | aktuell aktives Docker-Subvolume ermitteln: | ||
+ | btrfs subvolume get-default . | ||
+ | -> ID 472 gen 428819 top level 5 path **2025012601** | ||
+ | btrfs subvolume snapshot 2025012601 $(date '+%Y%m%d')00 | ||
+ | systemctl start docker.socket | ||
===== Docker mit BTRFS starten ===== | ===== Docker mit BTRFS starten ===== |