v1.102.0 ⚠️ Breaking Changes (OPT-IN ONLY) CautionFor people always pulling the latest compose file, this is a breaking change! Disregarding the notes will result in (temporary) data loss! Backgrou...
Who the hell is pulling the docker-compise.yml automatically every release?
I find myself already crazy by pulling the latest release but the compose file is just a disaster waiting to happen.
Then again it seems like people were using a docker volume to save all their precious photos rather than a mount point on the host. Also seems insane to me.
Could you explain a bit more about why it's insane to have it as a docked volume instead of a mount point on the host? I'm not too well-versed with docker (or maybe hosting in general)
Exactly this, my docker host has a folder for docker data. In there are sub folders for each docker app. Borg back grabs the entire docker data folder and backs it up.
If there are any issues, I can easily see all the files.
I have no idea how people trust things like docker volumes with valuable data without the ability to just see into the filesystem easily.
Who was pulling the dicker compose and just straight up running the GitHub version on their server. That seems crazy. Even pulling :latest tag seems crazy to me but this is another level.
This change is only breaking if you are running someone else's docker compose on your server without looking at it.
Also who was running their entire photo album in a docker volume rather than a mount point on the host. Another insane decision. To be fair, the default docker compose never should have had that. It should have been a mount point right from the start.
Mainly because of the number of things I have that I rely on every day and definitely don't want to break until I'm ready to upgrade it and have time to fix it if it does break.
I know many do use :latest but having a service break while I'm away or travelling really sucks
Inside that folder were all the DB files, so I just copied that into the new folder I created for ./postgres
I thought there would be issues with the file permissions, but not, everything went smoothly and I can't see any data loss.
(This even was a migration from 1.94 to 1.102, so I also did the pgvecto-rs upgrade)
First time im not completely sure how to proceed with update. This part is unclear to me:
Unfortunately there isn't a "proper" way to export a docker volume.
The recommended method is to mount the volume and the directory (you want to copy your data to) to an arbitrary container, get a shell inside that container and copy the folder manually.
I know how to stop the container and dump db, but need some help here
Pretty simple to switch (if you have a little docker experience). Create a folder (e.g. ./postgres), add the folder as a volume in the postgres portion of the compose file (maybe something like /db), then run just the database with newly mounted folder, shell in, and copy everything from the Postgres folder to this new folder. After that, swap mounts so the new folder is used as Postgres db and you’re good. If something went wrong, the pgdata volume is still there to switch back to.
So the way I read it, if you want to opt in, you make the new changes they state in your yml. I didn't and just hit upgrade to pull the new images and it worked fine. I don't see any issues, but I'll be glad if someone says I did it wrong.
I think it's only breaking if you pull the new yml and don't move your data.
I really wish they get to the point where we can expect long term with no breaking changes. I love it but I have been burnt twice, which is not a lot, but it was very annoying both times
Who is out there running compose down -v when they want to keep their data lol
Not a fan of this change, using volumes is what makes docker truly portable between systems. It's not the responsibility of Immich if people are running the wrong commands when managing their system.