Immich is making some breaking changes to version v1.88 reddit / selfhosted ---------------------------------------------------------------------- Significant-Neat7754 · 2023-11-18 16:25 They have already published a notice (and an example of the updated docker-compose.yml) here: ​ [https://github.com/immich- app/immich/discussions/5086](https://github.com/immich- app/immich/discussions/5086) ​ Immich proxy and Immich web containers are going to be removed. So, we are going to have to remove the sections in red (since they are no longer needed) and add the ones in green (see the link above) to the docker-compose.yml file. Please correct me if I'm wrong. ---------------------------------------------------------------------- HearthCore · 2023-11-18 16:51 Good notification! Thanks ---------------------------------------------------------------------- umairshariff23 · 2023-11-18 17:43 I've been wanting to start using immich. So, I would just use the new docker compose? ---------------------------------------------------------------------- smnhdy · 2023-11-18 17:50 Once 1.88 is released yes. Until then you need to use the old compose file. ---------------------------------------------------------------------- DerDexterM · 2023-11-18 17:56 Thx! 🙏 ---------------------------------------------------------------------- TechyRyan33 · 2023-11-18 18:07 Do you know if we have to make changes if installed through Unraid or other similar OS? ---------------------------------------------------------------------- DarkKnyt · 2023-11-18 18:13 And drop them some coin if you are a fan! ---------------------------------------------------------------------- Shane75776 · 2023-11-18 18:42 Has this subreddit become the Immich notification subreddit? Feel like all I see are Immich posts on my feed now. ---------------------------------------------------------------------- DubDubz · 2023-11-18 18:45 There has been a lot of demand for a google photos replacement for years, and all the other options were good but I’m much has matured seemingly to the most well liked version. So it’s not surprising. Same thing with cloudflare, exposing services, and reverse proxies. ---------------------------------------------------------------------- Kaleodis · 2023-11-18 18:45 Thanks for the notification. I would probably have missed it... ---------------------------------------------------------------------- wireis · 2023-11-18 18:56 Taken from the new 1.88 version notes: TLDR Basically, the steps are: Remove immich-proxy Remove immich-web Export port 2283:3001 in the immich-server container ---------------------------------------------------------------------- umairshariff23 · 2023-11-18 19:13 Perfect! Thanks for the info! ---------------------------------------------------------------------- WiseCookie69 · 2023-11-18 19:59 Inb4 people with Watchtower or other types of auto-updates come in and complain about their stuff suddenly being broken. ---------------------------------------------------------------------- carlinhush · 2023-11-18 20:01 I don't understand. What do I have to do? (Running on Unraid) ---------------------------------------------------------------------- fortisvita · 2023-11-18 20:09 It's just very good. Let em have it. ---------------------------------------------------------------------- MosquitoTerminator · 2023-11-18 20:18 Thanks for the heads up. ---------------------------------------------------------------------- Daniel15 · 2023-11-18 20:23 Auto updates should only ever be done for bugfixes, not for major updates since they often have breaking changes and you'd probably want to take a snapshot beforehand, to easily roll back in case of issues. It looks like Immich isn't properly following semantic versioning though. Breaking changes should bump the major version (eg from 1.x to 2.0). ---------------------------------------------------------------------- Daniel15 · 2023-11-18 20:25 How does Immich compare to Photostructure? ---------------------------------------------------------------------- Do_TheEvolution · 2023-11-18 20:29 Ive been wishing for immich to start using [S6-Overlay](https://github.com/just-containers/s6-overlay) that allows to have one container for multiple processes. Might turn those 8 in to 1. But 6 is still improvement, and I dont really know if S6 overlay would really solve it for their use case, I know home assistant uses it, and rustdesk uses it and its so nice to just have so clean compose. ---------------------------------------------------------------------- parkerflyguy · 2023-11-18 20:42 I would also like to know ---------------------------------------------------------------------- Daniel15 · 2023-11-18 21:06 One of the main points of containers is to have one service per container. Someone could make a separate Docker container that combines all parts into a single container, but it's against Docker best practices: https://docs.docker.com/config/containers/multi- service_container/ If you do want to run multiple processes, you don't need anything fancy - you can just make the entrypoint a shell script that starts everything (assuming it isn't a distroless or chiseled container). ---------------------------------------------------------------------- Daniel15 · 2023-11-18 21:09 When 1.88 is released, you'll nerd to delete the two Docker containers that aren't being used any more. If you're using an unofficial container, go to the Github repo oftthat container and see if they have any info about it. ---------------------------------------------------------------------- Do_TheEvolution · 2023-11-18 21:38 S6 has a paragraph touching on that titled - [The docker way?](https://github.com/just-containers/s6-overlay#the-docker-way) That they prefer to view the way as - *one thing per container* instead of *one process per container* And I kinda agree, linux too long abandoned the mantra of *do one thing well*... I remember when I was starting with compose and I was sitting there wondering why in the flying fuck is nextcloud having me dick with container that does cron.. like genuinely no other job, just to do run cronjobs. At some point it becomes too much and there will be move forward. ---------------------------------------------------------------------- Daniel15 · 2023-11-18 21:53 Multiple processes is fine, for example an image hosting service may use ImageMagick, ffmpeg, multiple worker processes, multiple web processes. I'd still argue that any process that can be shared with multiple apps (a database, a reverse proxy, etc) is a separate "thing", as is anything that you can scale up (eg you might want to run multiple worker Docker containers across multiple systems). ---------------------------------------------------------------------- p4block · 2023-11-18 22:34 Use the monolithic container and be done with it https://github.com/imagegenius/docker-immich Never bothered with the official one. This imagegenius person is an actual genius if you ask me. ---------------------------------------------------------------------- Nestramutat- · 2023-11-18 23:00 The only world this makes sense is self hosting. The moment you get proper container orchestration involved, S6 overlay is a nightmare to deal with. I actively avoid containers that use S6 ---------------------------------------------------------------------- iiiiiiiiiiip · 2023-11-18 23:07 Good, news about popular self hosted apps belongs here and honestly I miss having the Jellyfin subreddit for the same reason ---------------------------------------------------------------------- fofosfederation · 2023-11-18 23:24 I think it's poor separation of ideas to recycle one database for multiple apps. Yes sure, you have some extra overhead for running multiple db services, but the ability to entirely roll back the entire db container along with the app when something goes wrong is excellent. Don't let stuff related to your photos affect your home automation or your book library. It's always such a big pain integrating complex services that have 4 or 6 different containers. I would much prefer them be released as one big container that handles everything related to that app internally. I don't want to do the internal plumbing, just the external. ---------------------------------------------------------------------- fofosfederation · 2023-11-18 23:26 I don't think a lot of enterprises are trying to orchestrate Immich at scale. ---------------------------------------------------------------------- toomyem · 2023-11-18 23:31 But it still needs redis and postgres containers to work. So it is not so monolithic after all. ---------------------------------------------------------------------- Fenix04 · 2023-11-18 23:54 Per semver, versions with a major number of 0 should indicate breaking changes by incrementing the minor number. In practice, few projects do this correctly and it's way harder to reason about. In the end it's just a numbering scheme, so you might as well start at 1.0.0 and increment as needed. It's simpler and you can follow the more well understood parts of semver right from the start. Don't make version numbering emotional. :) ---------------------------------------------------------------------- mrpink57 · 2023-11-19 00:10 And for those who do use watchtower add this to the compose file: labels: - "com.centurylinklabs.watchtower.enable=false" ---------------------------------------------------------------------- Senkyou · 2023-11-19 00:13 For someone who has never touched watchtower and is casually curious, what does this do? ---------------------------------------------------------------------- Senkyou · 2023-11-19 00:13 If you're cool to wait I'd imagine it's out within a couple weeks, but that's 100% a guess as nothing has been released. ---------------------------------------------------------------------- BrenekH · 2023-11-19 00:28 It's a Docker label that tells Watchtower to not update that specific container ---------------------------------------------------------------------- mrpink57 · 2023-11-19 00:29 [https://containrrr.dev/watchtower/container- selection/](https://containrrr.dev/watchtower/container-selection/) Should read their docs, you can do monitor only too. ---------------------------------------------------------------------- p4block · 2023-11-19 00:36 Yeah it's not a kind of Omnibus container like what Gitlab ships. Those are separate apps and should run under separate containers for best handling really. I run it on k8s with sidecar containers for redis and pgsql (so three containers in some kind of 1:1 compose to k8s) but I am moving away from it to dependency helmcharts. ---------------------------------------------------------------------- Nestramutat- · 2023-11-19 00:43 Even in a selfhosting environment, I despise S6. Adding a full init system to a container complicates things to no end, and makes debugging that much harder. One container == one process. That's the only right way to do it. ---------------------------------------------------------------------- indrora · 2023-11-19 00:45 Watchtower is a bit of kit (originally by a major ISP) that watches for udpated versions of a container and pulls them, restarts them, does health checks, and if it flaps a bunch reverts the pull. ---------------------------------------------------------------------- Senkyou · 2023-11-19 00:50 If it does monitoring only then I actually may start using it. I never liked the idea of automatic updates ---------------------------------------------------------------------- EsEnZeT · 2023-11-19 01:14 Real life selfhosted example would be nice ---------------------------------------------------------------------- umairshariff23 · 2023-11-19 01:15 Yeah, I'm fine to wait until the release. I have a bunch of other stuff that I wanted to try out as well ---------------------------------------------------------------------- thekrautboy · 2023-11-19 01:22 If you just want to monitor your containers for available updates, give diun a try instead. Its excellent. https://github.com/crazy-max/diun ---------------------------------------------------------------------- thekrautboy · 2023-11-19 01:23 Cant wait for the day this gets released and have all those Watchtower users come here to cry why Immich is "suddenly" broken... ---------------------------------------------------------------------- TwilightOldTimer · 2023-11-19 01:32 Do we know when it'll release? ---------------------------------------------------------------------- doctorniz · 2023-11-19 01:33 Kinda how Reddit works. People post, others upvote and downvote. ---------------------------------------------------------------------- FlibblesHexEyes · 2023-11-19 02:14 Stop me if I’m wrong, but it sounds like S6 is just like a VM with extra steps? Personally I don’t mind if Immich uses 6 or 60 containers; that’s what we have compose for. Again, correct me if I’m wrong, but I just don’t see the benefit. ---------------------------------------------------------------------- CyberBlaed · 2023-11-19 04:24 DUIN is also the only one endorsed by the LinuxServer guys, so really says a lot there ;) ---------------------------------------------------------------------- Nestramutat- · 2023-11-19 04:48 LinuxServer containers run a chown on mounted directories to fix misconfigured permissions before starting the actual process. Container best practices say you shouldn't use the root user in a container. Running LinuxServer containers as nonroot will cause them to error out before even starting the app, since the chown fails. ---------------------------------------------------------------------- thekrautboy · 2023-11-19 04:56 > so really says a lot there Eh... ---------------------------------------------------------------------- EsEnZeT · 2023-11-19 05:20 Thanks, that makes sense if you can't change that. ---------------------------------------------------------------------- Nestramutat- · 2023-11-19 05:32 It's been a bit since I've looked at LinuxServer. From my recollection, they start as root, run their init scripts, then change user to whatever user the env var specifies to run inside the container. If you're running an environment where you don't allow containers to run as root, their init scripts will break. ---------------------------------------------------------------------- ChocoDarkMatter · 2023-11-19 06:45 version: "3" services: watchtower: image: containrrr/watchtower volumes: - /var/run/docker.sock:/var/run/docker.sock environment: WATCHTOWER_MONITOR_ONLY: 'true' WATCHTOWER_NOTIFICATIONS: email WATCHTOWER_NOTIFICATION_EMAIL_FROM: WATCHTOWER_NOTIFICATION_EMAIL_TO: WATCHTOWER_NOTIFICATION_EMAIL_SERVER: smtp.gmail.com WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PORT: 587 WATCHTOWER_NOTIFICATION_EMAIL_SERVER_USER: WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PASSWORD: WATCHTOWER_NOTIFICATION_EMAIL_DELAY: 2 Gmail notification only setup All 3 of the below values can be the same email address if you choose. WATCHTOWER\_NOTIFICATION\_EMAIL\_FROM: WATCHTOWER\_NOTIFICATION\_EMAIL\_TO: WATCHTOWER\_NOTIFICATION\_EMAIL\_SERVER\_USER: ---------------------------------------------------------------------- tubbana · 2023-11-19 07:00 Do they have any roadmap for 1.0? I'm basically waiting for that since forever before trying, but at some point one starts wondering if the project is just such a burning mess with no plan/architecture that it will never be stable if it takes so long ---------------------------------------------------------------------- altran1502 · 2023-11-19 07:28 Hi, Alex here. The project was a mess when I started it and then more contributors with better technical expertise than I am get onboard, since then, we have worked pretty damn hard to refactoring the codebase into a stage that new contributors can come in and contribute without breaking things. It is an unfortunately thing that we don’t have any ETA for the stable release since all of the contributors also have their day jobs. These type of breaking changes are to make Immich simpler and better, you don’t have to use it until the stable release is announced. We are still pretty much in development and we don’t want to sacrifice that notion at the moment to not make the practice and code base to its best possible state ---------------------------------------------------------------------- ben-ba · 2023-11-19 07:41 No backup, no pity Not using specific tags, no pity U should never use latest as tag, best practice is to use a specific version tag or at least a major tag. ---------------------------------------------------------------------- tubbana · 2023-11-19 08:12 Thanks for giving me hope. Of course it's not your fault your personal project became so popular that others started building expectations towards it :P ---------------------------------------------------------------------- Do_TheEvolution · 2023-11-19 09:02 I believe its just bunch of scripts that are in charge of your processes in a container. To have some managment system, start shit, monitor shit if its running, restart service if needed. >Personally I don’t mind if Immich uses 6 or 60 containers; that’s what we have compose for. I personally got a way I do docker compose. Never volumes, always bind mount. Never env variables in compose, always in .env file. And other smaller stuff. I am also used to knowing what is the reason for any container, what is its function. I document that shit [here](https://github.com/DoTheEvo/selfhosted-apps-docker). And I never launched immich yet because seeing those 8 containers, having no idea what half of them do and knowing its gonna take considerable amount of my time investigating.. well its a drawback than if their compose looked like [home assistant compose](https://www.home-assistant.io/installation/linux#docker- compose) ---------------------------------------------------------------------- archiekane · 2023-11-19 09:37 The joy of open source. I look forward to the day I can simply type 'apt install immich' and be done. Well done on keeping the project moving. ---------------------------------------------------------------------- Do_TheEvolution · 2023-11-19 10:52 Thnx, will be my first stop once the projects moves beyond this big change and the things settle ---------------------------------------------------------------------- flaotte · 2023-11-19 11:49 just do as i did. install current version to play around, then we do fresh install once its released. ---------------------------------------------------------------------- bleep1912 · 2023-11-19 12:04 Yes ---------------------------------------------------------------------- divDevGuy · 2023-11-19 16:39 Presuming Reddit isn't bumping up threads based on your prior viewing history, you're likely just experiencing a [frequency illusion](https://en.wikipedia.org/wiki/Frequency_illusion). It's a cognitive bias that causes us to notice something more often, making us believe it occurs at an increased frequency. While by no means scientific, I searched this subreddit for immich over the last month by new. I count about a dozen threads with immich in the subject, and a little over twice that with general photo sharing or app discussion without immich in the subject. That's averaging a post every 1 to 3 days depending on how you want to calculate it. The same thing happens elsewhere in our lives. My wife and I bought a SUV last year that [looks very similar] to a different make/model my parents who live nearby bought. My parents, wife, and I all agree that we notice many more compact SUVs that "*always*" are a Tuscon or CR-V, if not specifically that same shade of blue, thinking it may be the other party. ---------------------------------------------------------------------- Low-Chapter5294 · 2023-11-19 20:21 If you don't know what you're doing, watchtower is pretty much guaranteed to eventually give you a mismatched system of broken dockers. Be really careful with it. (Personally I have no idea why you would auto-update any service that you need to be functioning. You're just asking for trouble.) ---------------------------------------------------------------------- Low-Chapter5294 · 2023-11-19 20:22 No - using latest is fine. You should never blindly update. (Anyone who uses homeassistant is very aware of the risks.) ---------------------------------------------------------------------- Character_Big8879 · 2023-11-20 07:19 Hm I'm using photoprism atm it is worth looking at immich? ---------------------------------------------------------------------- 8484215 · 2023-11-20 07:27 Yes. But then I'm using Immich and have never tried Photoprism, so my opinion probably isn't worth a while lot. 😁 Having said that, moving a while family off Google Photos onto Immich has gone smoothly and I'm loving how good it is despite being relatively immature - certainly had zero problems using it. ---------------------------------------------------------------------- indrora · 2023-11-20 07:57 For well-structured containers, autopull is great. The stuff from linuxserver.io are great examples of this: They don't generally push breaking changes and their updates are consistent. If there are breaking changes, usually because of a version, they add a new tag. ---------------------------------------------------------------------- kring1 · 2023-11-20 08:32 Calling that change a breaking change is already a stretch... all we have to do is not start 2 containers. I really appreciate the way you inform in advance about this change but people bitching about Immich not being stable because of that "breaking change" probably shouldn't self host... Immich is one of the most convenient things to self host. * We get informed in the web app when a new version is available. * We get warned on patch notes about stuff that must be changed manually - if required. * Updating is just a compose pull and restart - easier then every apt whatever. * We get exceptional good support in Discord. And all that for free... Thank you! ---------------------------------------------------------------------- phone17 · 2023-11-20 19:03 Unfortunately it still violates Rule #1 of OWASP's Docker Security cheatsheet: https://cheatsheetseries.owasp.org/cheatsheets/Docker_Secu rity_Cheat_Sheet.html ---------------------------------------------------------------------- CyberBlaed · 2023-11-20 22:09 Well TIL then. I just follow the LinuxServer guys suggestions. so I guess they are not as great in that case :/ ---------------------------------------------------------------------- ghastrimsen · 2023-11-21 16:49 as someone who blindly updates homeassistant, well I guess I'm glad I have off device backups ---------------------------------------------------------------------- bobbarker4444 · 2023-11-21 19:07 Still pains me that Jellyfin killed off their subreddit just to try to funnel traffic to their forums. It didn't work, the forums are a (relative) ghost town, and the devs are too stubborn or something to ever admit it ---------------------------------------------------------------------- jrasm91 · 2023-11-21 23:35 Lol burning mess what? If you haven't used it you should definitely try it. Lots of people use it already and it is actually quite stable. The warning is more like a caveat that things are still moving very quickly, which is a good thing for the project. ---------------------------------------------------------------------- tubbana · 2023-11-22 05:23 The point was that some people wait until you have a stable major version, so you can autoupdate without breaking something, especially pretty important thing like photo backup ---------------------------------------------------------------------- phone17 · 2023-11-22 23:23 Yeah I use a couple of their images, but it does give me just a little pause. Probably depends on your needs and security profile.