####### In the PVE host ####### # Create LV for Docker storage lvcreate -L G -n vm--disk vg_ OR lvcreate -l 100%FREE -n vm--disk vg_ # Attach to VM qm set --scsi ha-lvm:vm--disk-,cache=writeback,discard=on,iothread=1,ssd=1 # For databases, do NOT use writeback cache (can corrupt/lose data if node or vm crashes) qm set --scsi ha-lvm:vm--disk-,cache=writethrough,discard=on,iothread=1,ssd=1 # Restart qm stop && qm start ####### In the VM ####### lvcreate -l 100%FREE -n lv_ vg_ sudo mkfs.xfs /dev/sdb1 sudo mkdir -p /docker-data sudo mount /dev/sdb1 /docker-data # Find UUID sudo blkid /dev/sdb1 # Add to fstab UUID=916202b1-c576-4fb8-acca-a72ac73320bf /docker-storage xfs defaults 0 0 ####### Move old data ####### sudo mkdir -p /docker-storage/docker sudo systemctl stop docker # Move old data sudo mv /var/lib/docker /var/lib/docker.bak # Symlink or use daemon.json sudo ln -s /docker-data/docker /var/lib/docker # OR use /etc/docker/daemon.json echo '{ "data-root": "/docker-data/docker" }' | sudo tee /etc/docker/daemon.json sudo systemctl start docker