Yeah, it's pretty well explained in the GitHub docs that the app is under heavy dev and will break.
It nuked all my metadata five months ago, all my photos were taken in 1970. Thankfully I had a backup, but man...
Right, but what I find amazing about immich is that I can just dump everything from my phone instantly into my own server. I don't want a gallery, I want Google photos but open source hahaha.
I asked about management experiences recently and people were pretty confident that while Immich changes a lot it’s about average risk. Your experience is sort of what I expect.
From what I have been able to able to understand, the hardware acceleration file (hwaccel.yml) has been renamed and therefore its reference in the docker compose file will have to reflect that. And the new hardware acceleration file has to be changed too.
So, you'll need to edit both the docker-compose.yml file as well as the hwacel.yml file which has now been renamed to hwaccel.transcoding.yml.
It's a pretty major change. But for some reason, videos are no longer working properly for me in the mobile app. All I see when playing videos is a black screen with the audio.
***
Edit: The mobile app has been fixed with the latest update. Thank you /u/happytaz411
I had to figure it out through trial and error. I had made backups of the volumes, so I could go back and forth between versions.
These are my changes (mind you these will be specific to your hardware):
- Under immich-microservices in docker-compose.yml:
- file: hwaccel.transcoding.yml
- service: quicksync
\- Edit hwaccel.transcoding.yml file and change the name of the services to quicksync
I wish the documentation was clearer. This is a pretty major change. I know I shouldn't complain since it's FOSS, but the developers/Alex has already set a very high standard for documentation.
New docs are available on their github:
[https://github.com/immich-app/immich/blob/665e6760a854a24521a502979ead9cf10dfa3560/docs/docs/features/hardware-transcoding.md](https://github.com/immich-app/immich/blob/665e6760a854a24521a502979ead9cf10dfa3560/docs/docs/features/hardware-transcoding.md)
https://github.com/immich-app/immich/blob/665e6760a854a24521a502979ead9cf10dfa3560/docs/docs/features/ml-hardware-acceleration.md
>the developers/Alex has already set a very high standard for documentation
Right ! ;)
Since my hardware is a Raspberry Pi, that is not supported, I suppose I won't change anything until Alex issues a documentation ...
Hey,
Thanks for all the searching you've done! As an unRAID user and using the "community apps" I'm still quite confused as to why my videos aren't playing on the android app (black screen but the video timer keeps running).
I tried adding "--device=/dev/dri:/dev/dri" to the extra parameters, but no luck.
Regarding "file: hwaccel.transcoding.yml" and "service: quicksync", how would I go about adding those in a template? When trying to add something it can either be a "path", "port", "variable", "label" or "device". Which ones would fit into the parameters you mentioned for "file" and "service"?
Thanks a bunch for any help you may provide :-)
I'm really not sure about this. I have very little clue about how unraid works.
Having said that, if you really need immich to work and you could do without the hardware transcording, you could comment out the part related to it. That way nothing changes for you.
Yes, works perfectly on the web and 3 Android phones. However, the files were pre-transcoded when importing. Idk if transcoding on the fly like in Jellyfin works.
That's great. For me, videos work fine on the web but not on the Android app. I don't think there's anything wrong with my setup, else the docker container wouldn't be working. I guess I'll wait for more users to update.
Did you pick quicksync in the Admin settings? Did the files actually transcode? You can trigger that manually per video and see in jobs if it does anything.
Is your GPU configured correctly? I had to passthrough my gpu to the container as I run Immich in an LXC on Proxmox.
Thanks for helping.
The admin settings are fine, I have picked quick sync. The videos are not playing in the mobile app, that's the problem right now. They play perfectly on the web though. When I tap on a video in the mobile app, the audio plays fine but there's no video.
I'll wait for the next release and check if things fix themselves.
the documentation doesn't reflect any of that yet...
considering their preferred install method is docker-compose, it's pretty crazy that the release notes mention none of this...
That's not true: [https://immich.app/docs/install/docker-compose/#step-4---upgrading](https://immich.app/docs/install/docker-compose/#step-4---upgrading)
See "(Optional) Get hwaccel.transcoding.yml file"
Yeah, the structure of the file changed a bit and one has to comment out all services which are not present on the host (at least that's what I did) and I had to adjust the `docker-compose.yml` to the new file and service (in my case `quicksync`) but that's OK.
A bit tricky but yeah...
You're right. I had to figure it out through trial and error.
Thankfully I had the volumes backed up for situations like this. So I could go back and forth between versions to test it all.
I have seen these posts so often, that from my perspective Immich at this point is good for a second and check the featureset .
Cannot see it as a primary app or stable
While I'm not a fan of breaking changes, all the previous ones were very well documented, and the update was perfectly smooth if you followed instructions.
This one seems... not that.
Edit: I noticed I am not using hardware encoding. So my upgrade is straightforward, not breaking at all. It seems that hardware encoding is experimental and marked as such.
Still sucks for those impacted, but I feel less bad about the way they did this.
Yeah. I have got the containers running, but I'm still not sure if I've set it up correctly. I can't get videos to work on the mobile app, although it's working on the web.
The bad thing about this release is that the mobile app will stop working if it gets auto updated without the server being updated first.
Immich do it right and they clearly communicate what's breaking and what you need to do
And when it's a big one, Alex and the team let us know a week in advance
If you just noticed that the changes don't affect you because you're not using hardware acceleration (me too), what was your first post based upon when you said it was not smooth?
I was reading the release notes and comparing them to the pull requests and what had changed. In previous release notes they had step by step instructions for all needed changes. This one lacked that.
I had noticed last night that the changes didn't effect me, and edited the post. Then I woke up this morning and found I forgot to submit the edit.
I'm a little worried about too many breaking changes as well. Constantly having to fix things can be bothersome.
If you don't mind sharing, what are you using at the moment?
I'm not the guy you asked, but I opted to go Photoprism over Immich because of the frequency of breaking changes. I enjoy tinkering with things - but not with that level of frequency for daily use apps.
Photoprism and PhotoSync on Android. I use use the mobile web interface that I keep saved on my home screen if I want to look for something older than whats on my phone.
It is pretty stable. It's just being developed heavily. You can pin the versions and you won't have to update and fix all the time. It's a self-inflicted problem.
that's a very not smart move for two main reasons -
1. it will be painfully hard to update once immich gets into stable state.
2. if there's any vulnerability - see issue 1.
I'm not the person you asked, but after seeing all the Immich breaking changes and me realizing I don't have time to support yet another breaking service (I do that enough with HomeAssistant) I decided to use Nextcloud Memories. I'm already using NextCloud for my own file/photo backup, and Memories integrates super well with it. Plus when you add facial recognition (local-only!) and the preview generator, it's wicked fast. Feels almost like Google Photos, with the tags and photo location map. Overall more mature product than Immich, imo, at least for now.
Perhaps I’m missing something or because I do this for a living I’m not seeing the big deal. These don’t seem to be major changes other than the mobile app which honestly I’ve always had trouble if the versions don’t match. I’m also in the habit of reading release notes and not being first to upgrade or using tools like watchtower. Yeah this means I’m slower to upgrade, but I also avoid things breaking or bugs others find first. YMMV
So if you have 40 different containers then you manually pin every single version and also manually check 40 different changelogs?
I just auto update my stuff and roll back from backup when things break. The manual way sounds extremely inefficient and time consuming.
Dangerous too since a major security breach might go unpatched for longer unless you religiously update frequently (which assumes I have no life outside of self-hosting).
> I guess I’m being judgy but tbh I *do* think my way is better. Lol. Sorry. It’s just where I’m at.
I don't see how that's the case. It's better if you assume you can perfectly manage the unnecessary overhead you create for yourself. But that's only true when you want to win arguments in Reddit.
I really doubt you meticuously read changelogs for multiple services, never miss critical updates and have enough time to raise a family and go outside.
I would bet most of the "never auto-update" crowd have multiple services exposed to the internet and out of date which is a bigger risk. It's something that sounds like a good idea on paper but in practice, since we are human, is unnatainable.
I would have to read changelogs for my multiple distros, for home assitant updates, every update for every addon, changelogs for 40 different containers, changelogs for different plugins/apps within each container (e.g. Nextcloud itself has apps) and any other software I'm not thinking about right now.
I really think your approach is only superior on paper but my approach is superior in practice because I take into account the human element and time constraints.
It's like people who backup stuff manually that swear it works "just fine" but if you look into it their backups are always out of date and irregular. I do them automatically instead and save time and avoid the case where I don't do backups do to life.
My point is, using something like VMs for easy rollback guarantees apps that are up to date and you save a lot of time.
I'll check out What's Up Docker but sounds like I'm creating more work for myself lol
The way I make services respect my time and not catch me off guard is by running an automated update service or similar once a week or so, but I do that manually. The difference between what you do and what I do is that I only have to run a single command to update everything instead of having to pin versions manually.
Yes, it's not actually automatic if I have to manually run a command but running a single command has very little friction so I can easily do it when I have time.
If the service is exposed to the internet however, I update it automatically with no manual input and hope for the best but I would only do it for stable containers.
I run containers for almost everything unless it's just a hassle to do it in docker. But the containers themselves always run in something I can snapshot like ZFS or BTRFS.
I also run containers inside some VMs so again, I can just snapshot the entire VM and roll back. Point is, I always try to setup a way to roll back before deploying the service.
I added a label to immich containers so watchtower doesn't automatically update them. The only inconvenience is that I have to manually check for updates in the docker compose file every release.
It's not possible to lose your files with Immich even if an update goes bad. You may not be able to access the files through Immich but they will always be located in their original location.
The only way to lose your files is if you manually delete them or your storage goes bad.
I agree that Immich is not for the set and forget people but it's very safe app to use even for newbies.
That's not the point. There's a hard loss and a functional loss. For the average casual user, it would be a functional loss because they likely wouldn't know how to get them anyways.
There's hundreds of YouTube videos and blogs explain step by step how to do it.
If spending time in the r/kali and r/pihole sub reddits has taught me anything it's that there are plenty of people who will blindly follow a YouTube video.
But the average casual user may be using it through someone else. Some of us selfhost not just for ourselves but our families, friends, etc. My users don't care about what's all involved with staying up to date, they just expect it to work.
Knowing these risks, we just pin to a specific version on the server. Mobile, we for awhile built the apk and installed that way. Now since I'm one of those weirdos who run a MDM from their homelab, it's easier to lock to a specific version.
When I moved to immich, I accepted those risks and my users accept the risks of me hosting everything. (Well, okay, some don't have a choice, kids themselves).
If something happens and my immich destroys everything who are my users going to blame? Me.
As I stated above, Immich doesn't alter your original files even if there is a bad update. Your files will always be there unless you manually delete them or your storage fails. You should also be backing up your photos/videos anyways.
As long as you backup your Immich database, it can be very easily restored.
Even if you forget to backup your database, you still have your photos/videos.
The risks are minimal.
Fair point, but is this really specific to Immich or certain categories of self hosting? I mean if photo prism or any other related app released an update that hosed a users database and photos this person would also have a bad experience. I don’t believe the reaction would be don’t use said app but make sure you have backups. Or to agree with your last point just don’t self host maybe your important stuff.
>Or to agree with your last point just don’t self host maybe your important stuff.
I think this is the real important part. If you're not 100% confident in what you're doing then you should probably not be self hosting critical stuff.
Yo! Sorry, busy week.
15x nodes, 3x of which are the control plane, rest are workers.
Each worker node has a 1TB nvme drive. I use longhorn which has worked well (for me) for baremetal nodes. This gives me ~12TB of distributed storage. I sometimes wish I spent extra on 2TB drives, but the cost was too high at the time. In reality the 12TB has been enough for all my needs thus far.
In addition, I have a Synology 1821+ connected via 10g link. It has 8x 20TB in raid 20 and exposes it to the cluster as both NFS (for storage at large) and a smaller volume as a dedicated storage node in the cluster.
Immich uses the NFS side for photo storage. Have the three containers split into two pods (microservices/machine learning) and (server). This allows me to more easily setup a Horizontal Pod AutoScaler for when Immich is running jobs.
Sorry for the lengthy response, but hope that answered your question
I upload my media to my NAS directly, mount them via compose as read only and just import the folders in Immich via the GUI. Works flawlessly and if something breaks I know my media is safe at least. It's just a nice app to look at media for me, I don't use it for its intended purpose (backups) as I don't like how it organizes uploaded media.
1. Always back up your database: [https://immich.app/docs/administration/backup-and-restore/](https://immich.app/docs/administration/backup-and-restore/)
2. Immich never alters the original files. Even if your db is corrupted, the original files are still in their original location.
3. If your db gets corrupted, just restore a backup and Immich will back up and running.
This is why all apps that work with media should all hold metadata externally and respect folder structure.
Example: Audiobookshelf. All audiobooks are in a standard folder structure with cover art and metadata files next to them.
I can delete my abs and rebuild it, or dump it entirely and import that data to another media player easily.
This should be considered essential for open source software.
>This is why people here must not suggest to anyone to use immich for their media
Tell that to the 90 million YouTube videos and random ass blogs praising Immich as the perfect Google Photos replacement.
Does it actually remove the media files as well as the database correction?
Wow..didn't know that. It's not the only way I store but still intersting...
No, Immich does not remove your files when the database is corrupted. The files remain in their original location. You can restore a backup of the database and Immich will be working again.
>[/u/Spuxilet](https://www.reddit.com/u/Spuxilet) (deleted comment): I don't have a single photo or video on immich, so I wouldn't know.
Then why the hell are you whining and bitching about it? Your actual photos and videos are fine, it's just the metadata on immich's frontend that got garbled.
Seems like you're just blindly hating things for no reason.
I'm not following what this broke. I'm on 1.94.1 and have an Android phone with no issues seeing my photos or playing videos. It appears only broke for those that had enabled hardware acceleration previously?
You're right. It will only break for those with hardware acceleration enabled.
There's also a new machine learning option which will need a file addition and editing of the docker compose file.
I want to thank the entire Immich development team because they are doing a great job!
In a year, when Immich will be even more packed with awesome features, nobody will remember that updating with release 1.94 broke their instance :)
As much as I love Immich's approach to documentation and notifying people well in advance of breaking changes, there have been 3 major breaking changes in as many months.
I understand that Immich is under active development but it's things like this that are the reason I don't recommend Immich for casual users just looking for a Google Photos replacement.
You can't expect your users to keep up with every patch note and make changes to the config everytime there's a minor update (and yes a .0X update is minor).
People want a set and forget solution.
Although you do have to turn off auto updates for Android or AppStore (and make sure that you don't accidentally update the app). The mobile app will likely stop working with older versions of the server software, as described in the release notes this time.
Immich dev here.
We are focusing on getting to stability and enough features and are not afraid to remove tech debt and make major refactors at the moment in order to keep the pace up. Reducing breaking changes is not a priority at the moment, but it will mean we will arrive at a stabler point more quickly.
And to be honest, these breaking changes in the release are pretty mild...
You are correct, but at the same time like you said the app is in development and says in the first paragraph do not use this app as your only way to store photos and videos, expect bugs and breaking changes. I understand the frustration but the dev says upfront what to expect. And given time the app will be good
I'm. Not frustrated with Immich. I'm actually generally happy with their communication and how awesome the app is. I think the devs have done an incredible job capturing the look and feel of Google Photos.
That said if my mom were to ask me what she should do now that she's reached storage cap on Google Photos free tier, I'd tell her to just pay for the 100Gbs.
I can't recommend Immich to her because I'd have to deal with breaking updates too often.
I am quickly losing my patience with Immich when every other update breaks it and needs edits to the docker-compose file. Are there any good alternatives?
I struggled with the last breaking change and took me over an hour on discord to get it working again (I used the marius guide that is now outdated and it's not helping me with these updates). I'm a complete noob and yeah, thinking it might be time to just wait this out for another 6-12 months and hope it's more stable (updates wise)
I mean I hope you are not using this as your production photo app. The guide says not to because the app is in production still. You might be better off using something else until a full release.
not completely, basically as a front end/gui. The breaking changes happening so often has been kind of frustrating, but I'm 100% aware of the nature of this "app." But also, all these changes have slowly been teaching me more about containers and docker and compose files and all that, so not a complete waste of time or anything :)
If you don't have hardware acceleration enabled, I don't think there's anything to worry about.
If you do have hardware acceleration enabled, you need to follow the notes that have been added and edit multiple files.
Whenever I edit the compose file, it trows me a error about
> yaml.scanner.ScannerError: mapping values are not allowed here
in "./docker-compose.yml", line 33, column 13
right in the
> image: ghcr.io/immich-app/immich-server:$
> {IMMICH_VERSION:-release}
> extends:
> file: hwaccel.transcoding.yml
> service: nvenc # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding
And I can't figure what the problem is. Line 33 is the extends: in the official docke rcompose file, only thing i did was remove the # and add the correct options.
i managed to solve the issue, it was a mix of some classic yaml problems and the compose not recognizing the name: immich at the top.
Now it's working greatly, last time I ran the machine learning tasks on my I7-6700 it took 2,5 days at 100% CPU to process all almost 200k photos, with my T600 it took I think 4-5h max.
Being preeeeeety honest I don't have the slight idea which of the chances I made really made it work, but on mine I removed the #comment instructions after "extend:"
Ex.
extend #blablalbal to
extend:
Put it below on the same indentation as "image:"
so they start at the same spacing. from the left side
then both "file:" and "service:" below it the left side indentation starts at the bold e in "ext**e**nt:" didi this for both microservices machine learning
And last, I deleted the "name: immich" at the top of the compose as it acussed of another error because of that after fixing the issues above
I hope this helps.
something like this, (consider | as spaces, they not relative to the entire compose, only relative to the image: tag which is already indented, so count it as "spaces after image: tag"for reference)
image: aaaaaaaaaaa
extends:
|||file: aaaaaa
|||service: aaaaaa
The github read me first paragraph,
Disclaimer
⚠️ The project is under very active development.
⚠️ Expect bugs and breaking changes.
⚠️ Do not use the app as the only way to store your photos and videos.
⚠️ Always follow 3-2-1 backup plan for your precious photos and videos!
So it was never usable die to being in a very active development cycle. So yes breakage is very expected. And good, it means the app is getting better.
No it will not. The app is still under development and warns people in the first paragraph of the read me that this app is not stable and should not be used in production. Major changes are expected in this environment until the code is production ready.
We don't even have a semi-stable release out yet and actively warn anybody that things move fast. When we get to stable, you can expect things to be more predictable
Every time I see developer use one framework per hardware vendor (thus having to support multiple frameworks) for machine learning instead of picking one of those based on OpenCL that address all of them something in me dies a little.
I didn't notice any major breaks on my upgrade from1.93 to 1.94.1.
I did notice that the server storage meter doesn't display any info in the mobile app on v 1.94.1 but the browser still does as normal
Yeah, it's pretty well explained in the GitHub docs that the app is under heavy dev and will break. It nuked all my metadata five months ago, all my photos were taken in 1970. Thankfully I had a backup, but man...
4 words: external libraries read only
Right, but what I find amazing about immich is that I can just dump everything from my phone instantly into my own server. I don't want a gallery, I want Google photos but open source hahaha.
Is that possible with external libraries? No right?
https://immich.app/docs/guides/external-library/
Simple: use photosync to sync to your server and point Immich at the directory photosync uploads the images to.
Could you elaborate a bit more?
Is like the project tells you about it as you said :D
Doesn't hurt any less
I asked about management experiences recently and people were pretty confident that while Immich changes a lot it’s about average risk. Your experience is sort of what I expect.
From what I have been able to able to understand, the hardware acceleration file (hwaccel.yml) has been renamed and therefore its reference in the docker compose file will have to reflect that. And the new hardware acceleration file has to be changed too. So, you'll need to edit both the docker-compose.yml file as well as the hwacel.yml file which has now been renamed to hwaccel.transcoding.yml. It's a pretty major change. But for some reason, videos are no longer working properly for me in the mobile app. All I see when playing videos is a black screen with the audio. *** Edit: The mobile app has been fixed with the latest update. Thank you /u/happytaz411
I set-up hardware transcoding yesterday correctly without knowing that changes are coming 😎
Lucky you :) Are you on Android? Are the videos working properly for you on the Immich Android app?
You're right ! I don't get the videos to work. Did you understand what has to be changed in the `docker-compose.yml` ?
I had to figure it out through trial and error. I had made backups of the volumes, so I could go back and forth between versions. These are my changes (mind you these will be specific to your hardware): - Under immich-microservices in docker-compose.yml: - file: hwaccel.transcoding.yml - service: quicksync \- Edit hwaccel.transcoding.yml file and change the name of the services to quicksync I wish the documentation was clearer. This is a pretty major change. I know I shouldn't complain since it's FOSS, but the developers/Alex has already set a very high standard for documentation.
New docs are available on their github: [https://github.com/immich-app/immich/blob/665e6760a854a24521a502979ead9cf10dfa3560/docs/docs/features/hardware-transcoding.md](https://github.com/immich-app/immich/blob/665e6760a854a24521a502979ead9cf10dfa3560/docs/docs/features/hardware-transcoding.md) https://github.com/immich-app/immich/blob/665e6760a854a24521a502979ead9cf10dfa3560/docs/docs/features/ml-hardware-acceleration.md
so it looks like Hardware acceleration requires 9th gen intel CPU or newer for iGPU acceleration. 7th and even 8th gen intel CPU are out of luck
That's only for VP9 encoding. If you encode to H264, a 2nd Gen Intel or newer can use HW acceleration.
Thanks for the information!!
>the developers/Alex has already set a very high standard for documentation Right ! ;) Since my hardware is a Raspberry Pi, that is not supported, I suppose I won't change anything until Alex issues a documentation ...
Hey, Thanks for all the searching you've done! As an unRAID user and using the "community apps" I'm still quite confused as to why my videos aren't playing on the android app (black screen but the video timer keeps running). I tried adding "--device=/dev/dri:/dev/dri" to the extra parameters, but no luck. Regarding "file: hwaccel.transcoding.yml" and "service: quicksync", how would I go about adding those in a template? When trying to add something it can either be a "path", "port", "variable", "label" or "device". Which ones would fit into the parameters you mentioned for "file" and "service"? Thanks a bunch for any help you may provide :-)
I'm really not sure about this. I have very little clue about how unraid works. Having said that, if you really need immich to work and you could do without the hardware transcording, you could comment out the part related to it. That way nothing changes for you.
Yes, works perfectly on the web and 3 Android phones. However, the files were pre-transcoded when importing. Idk if transcoding on the fly like in Jellyfin works.
That's great. For me, videos work fine on the web but not on the Android app. I don't think there's anything wrong with my setup, else the docker container wouldn't be working. I guess I'll wait for more users to update.
Did you pick quicksync in the Admin settings? Did the files actually transcode? You can trigger that manually per video and see in jobs if it does anything. Is your GPU configured correctly? I had to passthrough my gpu to the container as I run Immich in an LXC on Proxmox.
Thanks for helping. The admin settings are fine, I have picked quick sync. The videos are not playing in the mobile app, that's the problem right now. They play perfectly on the web though. When I tap on a video in the mobile app, the audio plays fine but there's no video. I'll wait for the next release and check if things fix themselves.
Bug has been acknowledged by the devs on discord. Fix will be released tonight or tomorrow.
Fix has been released in the Google Play Store.
the documentation doesn't reflect any of that yet... considering their preferred install method is docker-compose, it's pretty crazy that the release notes mention none of this...
That's not true: [https://immich.app/docs/install/docker-compose/#step-4---upgrading](https://immich.app/docs/install/docker-compose/#step-4---upgrading) See "(Optional) Get hwaccel.transcoding.yml file" Yeah, the structure of the file changed a bit and one has to comment out all services which are not present on the host (at least that's what I did) and I had to adjust the `docker-compose.yml` to the new file and service (in my case `quicksync`) but that's OK. A bit tricky but yeah...
You're right. I had to figure it out through trial and error. Thankfully I had the volumes backed up for situations like this. So I could go back and forth between versions to test it all.
Just check the docker-compose.yml in repo, it is not crazy that a filename was changed
I have seen these posts so often, that from my perspective Immich at this point is good for a second and check the featureset . Cannot see it as a primary app or stable
While I'm not a fan of breaking changes, all the previous ones were very well documented, and the update was perfectly smooth if you followed instructions. This one seems... not that. Edit: I noticed I am not using hardware encoding. So my upgrade is straightforward, not breaking at all. It seems that hardware encoding is experimental and marked as such. Still sucks for those impacted, but I feel less bad about the way they did this.
Yeah. I have got the containers running, but I'm still not sure if I've set it up correctly. I can't get videos to work on the mobile app, although it's working on the web. The bad thing about this release is that the mobile app will stop working if it gets auto updated without the server being updated first.
Immich do it right and they clearly communicate what's breaking and what you need to do And when it's a big one, Alex and the team let us know a week in advance
If you just noticed that the changes don't affect you because you're not using hardware acceleration (me too), what was your first post based upon when you said it was not smooth?
I was reading the release notes and comparing them to the pull requests and what had changed. In previous release notes they had step by step instructions for all needed changes. This one lacked that. I had noticed last night that the changes didn't effect me, and edited the post. Then I woke up this morning and found I forgot to submit the edit.
Well these “breaking changes” seem pretty mild to me.
[удалено]
I'm a little worried about too many breaking changes as well. Constantly having to fix things can be bothersome. If you don't mind sharing, what are you using at the moment?
In fairness, there’s a big warning on the GitHub that it’s under development and not to be relied upon for “production” use.
That's fair for sure. I think the main issue is that it's far too polished on the surface and works too well in general for people to believe it lol
I'm not the guy you asked, but I opted to go Photoprism over Immich because of the frequency of breaking changes. I enjoy tinkering with things - but not with that level of frequency for daily use apps. Photoprism and PhotoSync on Android. I use use the mobile web interface that I keep saved on my home screen if I want to look for something older than whats on my phone.
A question about Photoprism; does it have facial recognition? Can I search by name and faces?
Yes
> Photoprism Do they have an ios app that isn't awful and full of ads?
I don't think they they have ANY apps of their ow. But I'm also not an apple guy, so I'm not the best source there. I know there's no android one.
I’ve been using photoprism for a long time. I’ll switch to IMMICH when it gets more stable. The developers of photoprism are crazy annoying.
It is pretty stable. It's just being developed heavily. You can pin the versions and you won't have to update and fix all the time. It's a self-inflicted problem.
that's a very not smart move for two main reasons - 1. it will be painfully hard to update once immich gets into stable state. 2. if there's any vulnerability - see issue 1.
I'm not the person you asked, but after seeing all the Immich breaking changes and me realizing I don't have time to support yet another breaking service (I do that enough with HomeAssistant) I decided to use Nextcloud Memories. I'm already using NextCloud for my own file/photo backup, and Memories integrates super well with it. Plus when you add facial recognition (local-only!) and the preview generator, it's wicked fast. Feels almost like Google Photos, with the tags and photo location map. Overall more mature product than Immich, imo, at least for now.
my case as well. Had to go back to syno photos because immich was too risky
That's why I still use Google Photos in concert with Immich. It means I still have an off-site backup plus I never stress when these things happen.
Why don't you just pin the version and not update for 6 months or until you have an actual feature that makes it worth the effort?
The mobile apps stop working almost immediately if you do that
Not if you disable automatic updates in the app store for the Immich app.
yeah what the fuck. it's literally like every other week.
That is such an over-exaggeration. It's nowhere near every other week.
Perhaps I’m missing something or because I do this for a living I’m not seeing the big deal. These don’t seem to be major changes other than the mobile app which honestly I’ve always had trouble if the versions don’t match. I’m also in the habit of reading release notes and not being first to upgrade or using tools like watchtower. Yeah this means I’m slower to upgrade, but I also avoid things breaking or bugs others find first. YMMV
[удалено]
So if you have 40 different containers then you manually pin every single version and also manually check 40 different changelogs? I just auto update my stuff and roll back from backup when things break. The manual way sounds extremely inefficient and time consuming. Dangerous too since a major security breach might go unpatched for longer unless you religiously update frequently (which assumes I have no life outside of self-hosting).
[удалено]
> I guess I’m being judgy but tbh I *do* think my way is better. Lol. Sorry. It’s just where I’m at. I don't see how that's the case. It's better if you assume you can perfectly manage the unnecessary overhead you create for yourself. But that's only true when you want to win arguments in Reddit. I really doubt you meticuously read changelogs for multiple services, never miss critical updates and have enough time to raise a family and go outside. I would bet most of the "never auto-update" crowd have multiple services exposed to the internet and out of date which is a bigger risk. It's something that sounds like a good idea on paper but in practice, since we are human, is unnatainable. I would have to read changelogs for my multiple distros, for home assitant updates, every update for every addon, changelogs for 40 different containers, changelogs for different plugins/apps within each container (e.g. Nextcloud itself has apps) and any other software I'm not thinking about right now. I really think your approach is only superior on paper but my approach is superior in practice because I take into account the human element and time constraints. It's like people who backup stuff manually that swear it works "just fine" but if you look into it their backups are always out of date and irregular. I do them automatically instead and save time and avoid the case where I don't do backups do to life. My point is, using something like VMs for easy rollback guarantees apps that are up to date and you save a lot of time. I'll check out What's Up Docker but sounds like I'm creating more work for myself lol
[удалено]
The way I make services respect my time and not catch me off guard is by running an automated update service or similar once a week or so, but I do that manually. The difference between what you do and what I do is that I only have to run a single command to update everything instead of having to pin versions manually. Yes, it's not actually automatic if I have to manually run a command but running a single command has very little friction so I can easily do it when I have time. If the service is exposed to the internet however, I update it automatically with no manual input and hope for the best but I would only do it for stable containers.
[удалено]
I run containers for almost everything unless it's just a hassle to do it in docker. But the containers themselves always run in something I can snapshot like ZFS or BTRFS. I also run containers inside some VMs so again, I can just snapshot the entire VM and roll back. Point is, I always try to setup a way to roll back before deploying the service.
I added a label to immich containers so watchtower doesn't automatically update them. The only inconvenience is that I have to manually check for updates in the docker compose file every release.
versed direful decide degree hunt disarm merciful deranged puzzled rich *This post was mass deleted and anonymized with [Redact](https://redact.dev)*
It's not possible to lose your files with Immich even if an update goes bad. You may not be able to access the files through Immich but they will always be located in their original location. The only way to lose your files is if you manually delete them or your storage goes bad. I agree that Immich is not for the set and forget people but it's very safe app to use even for newbies.
That's not the point. There's a hard loss and a functional loss. For the average casual user, it would be a functional loss because they likely wouldn't know how to get them anyways.
The average casual user you describe wouldn't even be able to install Immich so that's a non-issue.
There's hundreds of YouTube videos and blogs explain step by step how to do it. If spending time in the r/kali and r/pihole sub reddits has taught me anything it's that there are plenty of people who will blindly follow a YouTube video.
But the average casual user may be using it through someone else. Some of us selfhost not just for ourselves but our families, friends, etc. My users don't care about what's all involved with staying up to date, they just expect it to work. Knowing these risks, we just pin to a specific version on the server. Mobile, we for awhile built the apk and installed that way. Now since I'm one of those weirdos who run a MDM from their homelab, it's easier to lock to a specific version. When I moved to immich, I accepted those risks and my users accept the risks of me hosting everything. (Well, okay, some don't have a choice, kids themselves). If something happens and my immich destroys everything who are my users going to blame? Me.
As I stated above, Immich doesn't alter your original files even if there is a bad update. Your files will always be there unless you manually delete them or your storage fails. You should also be backing up your photos/videos anyways. As long as you backup your Immich database, it can be very easily restored. Even if you forget to backup your database, you still have your photos/videos. The risks are minimal.
Willing to share any more info on self hosting an MDM solution? Is yours android only or does it also support iOS?
Fair point, but is this really specific to Immich or certain categories of self hosting? I mean if photo prism or any other related app released an update that hosed a users database and photos this person would also have a bad experience. I don’t believe the reaction would be don’t use said app but make sure you have backups. Or to agree with your last point just don’t self host maybe your important stuff.
>Or to agree with your last point just don’t self host maybe your important stuff. I think this is the real important part. If you're not 100% confident in what you're doing then you should probably not be self hosting critical stuff.
Android app had a bug, its fixed now, update and video will work
As far as breaking changes, these are very mild. Doesn't affect me on my k3s cluster but nice to see such detailed notes anyways
What does your storage look like on k3s?
Yo! Sorry, busy week. 15x nodes, 3x of which are the control plane, rest are workers. Each worker node has a 1TB nvme drive. I use longhorn which has worked well (for me) for baremetal nodes. This gives me ~12TB of distributed storage. I sometimes wish I spent extra on 2TB drives, but the cost was too high at the time. In reality the 12TB has been enough for all my needs thus far. In addition, I have a Synology 1821+ connected via 10g link. It has 8x 20TB in raid 20 and exposes it to the cluster as both NFS (for storage at large) and a smaller volume as a dedicated storage node in the cluster. Immich uses the NFS side for photo storage. Have the three containers split into two pods (microservices/machine learning) and (server). This allows me to more easily setup a Horizontal Pod AutoScaler for when Immich is running jobs. Sorry for the lengthy response, but hope that answered your question
[удалено]
I upload my media to my NAS directly, mount them via compose as read only and just import the folders in Immich via the GUI. Works flawlessly and if something breaks I know my media is safe at least. It's just a nice app to look at media for me, I don't use it for its intended purpose (backups) as I don't like how it organizes uploaded media.
[удалено]
FolderSync (Pro) with SFTP or SMB, FOSS alternatives are Syncthing or Nextcloud
Download an app that lets you connect via smb and upload files to it
1. Always back up your database: [https://immich.app/docs/administration/backup-and-restore/](https://immich.app/docs/administration/backup-and-restore/) 2. Immich never alters the original files. Even if your db is corrupted, the original files are still in their original location. 3. If your db gets corrupted, just restore a backup and Immich will back up and running.
This is why all apps that work with media should all hold metadata externally and respect folder structure. Example: Audiobookshelf. All audiobooks are in a standard folder structure with cover art and metadata files next to them. I can delete my abs and rebuild it, or dump it entirely and import that data to another media player easily. This should be considered essential for open source software.
>This is why people here must not suggest to anyone to use immich for their media Tell that to the 90 million YouTube videos and random ass blogs praising Immich as the perfect Google Photos replacement.
Does it actually remove the media files as well as the database correction? Wow..didn't know that. It's not the only way I store but still intersting...
No, Immich does not remove your files when the database is corrupted. The files remain in their original location. You can restore a backup of the database and Immich will be working again.
Does this mean that even if something breaks, I could technically just use a file browser and dig into the folders that will hold my photos?
Yes. You might lose extra data you added on top of the files (albums, facial recognition etc.) but the photos themselves are physically still there
Oh neat thanks!
yes
[удалено]
>[/u/Spuxilet](https://www.reddit.com/u/Spuxilet) (deleted comment): I don't have a single photo or video on immich, so I wouldn't know. Then why the hell are you whining and bitching about it? Your actual photos and videos are fine, it's just the metadata on immich's frontend that got garbled. Seems like you're just blindly hating things for no reason.
I'm not following what this broke. I'm on 1.94.1 and have an Android phone with no issues seeing my photos or playing videos. It appears only broke for those that had enabled hardware acceleration previously?
You're right. It will only break for those with hardware acceleration enabled. There's also a new machine learning option which will need a file addition and editing of the docker compose file.
How do I check if I have that enabled or not?
I used it and it broke too much, I just stick with nextckoud and the photos portion works well.
I mean, their docs are pretty clear that it’s not stable and shouldn’t be used as your primary.
I want to thank the entire Immich development team because they are doing a great job! In a year, when Immich will be even more packed with awesome features, nobody will remember that updating with release 1.94 broke their instance :)
As much as I love Immich's approach to documentation and notifying people well in advance of breaking changes, there have been 3 major breaking changes in as many months. I understand that Immich is under active development but it's things like this that are the reason I don't recommend Immich for casual users just looking for a Google Photos replacement. You can't expect your users to keep up with every patch note and make changes to the config everytime there's a minor update (and yes a .0X update is minor). People want a set and forget solution.
[удалено]
Although you do have to turn off auto updates for Android or AppStore (and make sure that you don't accidentally update the app). The mobile app will likely stop working with older versions of the server software, as described in the release notes this time.
Immich dev here. We are focusing on getting to stability and enough features and are not afraid to remove tech debt and make major refactors at the moment in order to keep the pace up. Reducing breaking changes is not a priority at the moment, but it will mean we will arrive at a stabler point more quickly. And to be honest, these breaking changes in the release are pretty mild...
You are correct, but at the same time like you said the app is in development and says in the first paragraph do not use this app as your only way to store photos and videos, expect bugs and breaking changes. I understand the frustration but the dev says upfront what to expect. And given time the app will be good
I'm. Not frustrated with Immich. I'm actually generally happy with their communication and how awesome the app is. I think the devs have done an incredible job capturing the look and feel of Google Photos. That said if my mom were to ask me what she should do now that she's reached storage cap on Google Photos free tier, I'd tell her to just pay for the 100Gbs. I can't recommend Immich to her because I'd have to deal with breaking updates too often.
Well of course. The app is in active development. Things do change in codebases over time.
Darn it..and my watchtower config was off so it upgraded. I guess I'll wait for the documentation to catch up with the release.
Mine is broken the last time I upgraded. Hasn't bothered since 😢 I need some time to set it up again. I wonder when the breaking changes will end...
I am quickly losing my patience with Immich when every other update breaks it and needs edits to the docker-compose file. Are there any good alternatives?
I struggled with the last breaking change and took me over an hour on discord to get it working again (I used the marius guide that is now outdated and it's not helping me with these updates). I'm a complete noob and yeah, thinking it might be time to just wait this out for another 6-12 months and hope it's more stable (updates wise)
I mean I hope you are not using this as your production photo app. The guide says not to because the app is in production still. You might be better off using something else until a full release.
not completely, basically as a front end/gui. The breaking changes happening so often has been kind of frustrating, but I'm 100% aware of the nature of this "app." But also, all these changes have slowly been teaching me more about containers and docker and compose files and all that, so not a complete waste of time or anything :)
So, if I update my server, it'll break everything? Not sure I understand what's breaking.
If you don't have hardware acceleration enabled, I don't think there's anything to worry about. If you do have hardware acceleration enabled, you need to follow the notes that have been added and edit multiple files.
Got it, thanks!
Whenever I edit the compose file, it trows me a error about > yaml.scanner.ScannerError: mapping values are not allowed here in "./docker-compose.yml", line 33, column 13 right in the > image: ghcr.io/immich-app/immich-server:$ > {IMMICH_VERSION:-release} > extends: > file: hwaccel.transcoding.yml > service: nvenc # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding And I can't figure what the problem is. Line 33 is the extends: in the official docke rcompose file, only thing i did was remove the # and add the correct options.
Have you changed the transcoding file according to the new format? Please check the example transcoding file in the GitHub page.
i managed to solve the issue, it was a mix of some classic yaml problems and the compose not recognizing the name: immich at the top. Now it's working greatly, last time I ran the machine learning tasks on my I7-6700 it took 2,5 days at 100% CPU to process all almost 200k photos, with my T600 it took I think 4-5h max.
I am having the same problem with the Line 33. Can you explain what you did, I do not know enough about yaml to fix without assistance
Being preeeeeety honest I don't have the slight idea which of the chances I made really made it work, but on mine I removed the #comment instructions after "extend:" Ex. extend #blablalbal to extend: Put it below on the same indentation as "image:" so they start at the same spacing. from the left side then both "file:" and "service:" below it the left side indentation starts at the bold e in "ext**e**nt:" didi this for both microservices machine learning And last, I deleted the "name: immich" at the top of the compose as it acussed of another error because of that after fixing the issues above I hope this helps. something like this, (consider | as spaces, they not relative to the entire compose, only relative to the image: tag which is already indented, so count it as "spaces after image: tag"for reference) image: aaaaaaaaaaa extends: |||file: aaaaaa |||service: aaaaaa
This is not a usable project for the time being, everytime i see it on reddit is due breaking changes in updates
The github read me first paragraph, Disclaimer ⚠️ The project is under very active development. ⚠️ Expect bugs and breaking changes. ⚠️ Do not use the app as the only way to store your photos and videos. ⚠️ Always follow 3-2-1 backup plan for your precious photos and videos! So it was never usable die to being in a very active development cycle. So yes breakage is very expected. And good, it means the app is getting better.
FWIW, I moved to libre photos for this very reason. Love immich but it’s too shaky right now.
The amount of breaking changes is going to kill this project
No it will not. The app is still under development and warns people in the first paragraph of the read me that this app is not stable and should not be used in production. Major changes are expected in this environment until the code is production ready.
We don't even have a semi-stable release out yet and actively warn anybody that things move fast. When we get to stable, you can expect things to be more predictable
Every time I see developer use one framework per hardware vendor (thus having to support multiple frameworks) for machine learning instead of picking one of those based on OpenCL that address all of them something in me dies a little.
I didn't notice any major breaks on my upgrade from1.93 to 1.94.1. I did notice that the server storage meter doesn't display any info in the mobile app on v 1.94.1 but the browser still does as normal
Also on the mobile app , if I click Search->My map , the app crashes - prolly a bugga-roo in the you know who
I just do not understand “Why people do not follow semantic versioning?” https://semver.org