Remix.run Logo
WilcoKruijer 9 hours ago

How do people handle backups with Immich? Ideally I’d like all my images to be uploaded to object storage if I’m self-hosting.

denysvitali 8 hours ago | parent | next [-]

Unfortunately Immich doesn't (yet) support object storage natively, which IMHO would make things way easier in a lot of ways.

You can still mount an object storage bucket to the filesystem, but it's not supported officially by Immich and you anyways have additional delay caused by the fact that your device reaches out to your server, and your server reaches out to the bucket.

It would be amazing (and I've been working on that) to have an Immich that supports natively S3 and does everything with S3.

This, together with the performance issues of Immich, is what pushed me to create immich-go-backend (https://github.com/denysvitali/immich-go-backend) - a complete rewrite of Immich's backend in Go.

The project is not mature enough yet, but the goal is to reach feature parity + native S3 integration.

sylens 5 hours ago | parent [-]

I think Ente uses MinIO for storage, I could see them supporting the ability to self-host in S3 at some point

vishnukvmd 4 hours ago | parent [-]

Hey, you can connect any S3 compliant service to Ente.

Our quickstart.sh[1] bundles Minio, but you can configure Ente to use RustFS[2] or Garage[3] instead.

[1]: https://ente.io/help/self-hosting/#quickstart

[2]: https://github.com/rustfs/rustfs

[3]: https://garagehq.deuxfleurs.fr/

sylens 3 hours ago | parent [-]

Thanks for the links 0 it’s been a while since I looked at the self hosting documentation.

andrew_eu 9 hours ago | parent | prev | next [-]

I have the main volume for images in a zpool with two SSDs in a raid-1 configuration. I also have a daily cronjob that makes an encrypted off-site backup with Borg. I've also got healthchecks.io jobs setup so that if the zpool becomes unhealthy, the backups fail, or anything stops, then both me and my partner get alerted.

My partner isn't very technical, but having an Immich server we are both invested in has gotten her much more interested in self hosting and the skills to do it.

konart 3 hours ago | parent | prev | next [-]

Something like https://github.com/yandex-cloud/geesefs I'd guess.

yonatan8070 5 hours ago | parent | prev | next [-]

My setup has Immich in a Docker container, which is itself in a Proxmox LXC container.

I then have Proxmox back it up to Proxmox Backup Server running in a VM, and it has a cron job that uploads the whole backup of everything to Backblaze B2.

The backup script to B2 is a bit awful at the moment because it re-uploads the whole thing every night... I plan on switching to something better like Kopia at some point when I'll get the time

ProfDreamer 9 hours ago | parent | prev | next [-]

I'm using restic to backup the Immich photo directories as well as automatically generated Immich database dumps to an external drive and a Hetzner Storage Box.

Jnr 8 hours ago | parent | prev | next [-]

I create local and remote restic backups (using Backrest). I just point to the docker mount points and run database export as a pre-hook.

PhilipRoman 9 hours ago | parent | prev | next [-]

Personally I do a daily sync from the underlying gocryptfs to Backblaze B2. It's also on btrfs so I can do snapshots, etc.

rraghur 8 hours ago | parent | prev | next [-]

Incremental borg backups uploaded to cloud storage... Have a cron job and get notified about every backup

Eikon 5 hours ago | parent | prev [-]

Shameless plug: https://github.com/Barre/ZeroFS