Lxd-snapper: LXD snapshots, automated

Hi,

lxd-snapper is an application that takes snapshots.schedule & snapshots.expiry to the extreme - it allows to perform easy per-container(s) / per-project(s) snapshots with rich, Borg-style retention policies.

Say, you want to keep a handful of daily snapshots + a snapshot a week + a snapshot a month, but only for storage-oriented containers - no biggie!

policies:
  databases:
    included-instances: ['mysql']
    keep-last: 4

  files:
    included-instances: ['nextcloud', 'owncloud']
    keep-daily: 7
    keep-weekly: 2
    keep-monthly: 2

Say, you’re using projects to separate clients and you particularly care about some more:

policies:
  all-clients:
    keep-last: 4

  important-clients:
    included-projects: ['rich-client-a', 'rich-client-b']
    keep-last: 32

… and much more - everything’s been described in the project’s readme.

I’ve been using it on my private server for a few months now and decided it’s time to share :slight_smile:

3 Likes