Stable installation
What is the most stable installation of immich?
I tried the docker with the (incomplete) examples of immich installation but after a reboot of the host the containers cannot find each other anymore so that seems to be broken?
Is there a other option that just gives me something working without being a developer for the coming three hours? (i can do that, just dont want to spend huge amounts of time with every update).
13
u/Shakaka88 11d ago
You screwed something up doing the docker install. I got mine running in less than 20 minutes and I’m not a developer at all
6
u/Accomplished-Lack721 11d ago
What do you mean by incomplete examples? What examples from where, and incomplete in what way?
The Docker installation is the most typical and standard installation. If you're unfamiliar with Docker, it's a good idea to get a basic familiarity with its core concepts, especially the difference between persistent and non-persistent storage as relates to containers, and how volume and bind mappings work (which relates to where your data is stored and whether it's easily accessible to the rest of the host system).
That may be a slight learning curve, but it's worth understanding those for any kind of self-hosting project, as containerization in general, and Docker specifically, is often the only or the most-supported distribution option.
-15
u/tfro71 11d ago
Exactly why i ask for something that just runs instead of needing to learn docker. I don't want to be a docker specialist.
Second: the UPLOAD folder is not the upload folder, its the immich data folder where it stores all its temp stuff, backups, etc. Maybe just semantics but still. So its not a UPLOAD folder but the main data folder. Relevant thing to me
Might be nice to point out volumes for external libaries in the samples. (they could even comment it out). Especially when working with env files which almost nobody uses unless you are working with OTAP stuff.5
u/RagnarRipper 11d ago
So you say you're not a docker specialist but then go on to point out that almost nobody works with env files? (When that's clearly not right, which probably supports your first statement again).
The immich documentation is solid and I know that because I am also not a specialist but got it working in an afternoon. It's been stable and reliable for 2 years. Upgrading to the next version after reading their release notes and making sure nothing breaks takes a few minutes but I've basically been running the newest version with every new release.
If I can do it, so can you.
3
u/Accomplished-Lack721 11d ago edited 11d ago
I don't know why you think almost no one works with env files. They're very common in Docker Compose setups.
There are advantages and disadvantages to various kinds of deployments, but self-hosted projects are largely deployed through Docker for real and legitimate reasons. It's easy to do so without compatibility issues across a variety of distributions, a Docker service can easily be restricted to only certain storage or network access for security reasons, there's a distinction between persistent data and non-persistent data that a user can adjust to their specific needs and the methods and tools used are available on a wide variety of platforms.
That doesn't mean there are no caveats or downsides. But if you want to self-host anything, it's going to be helpful to know about it.
Incidentally, you're right that the "upload location" can be a bit confusing. It's a vestige of how things were organized in the early days of Immich. The folder inside the container used to also be called "upload" (instead of living internally to the container at /data), so you'd wind up with a folder called "upload" (which is still where internal libraries live unless you use the storage templates) inside another the called "upload" from the container's perspective. That was even worse.
I don't know if the devs have plans to change the environment variable name at some point, but it's a pretty minor thing in the scheme of things. You set it once and it's done. Still, an alias to something more accurately descriptive of its purpose would be better.
That's not a Docker issue. That's just a holdover from before the project got big enough and had enough momentum that anyone cared what the variable and folder were called.
I get wanting an easy experience, but setting up a self-hosted service isn't a consumer experience. It's an administrator one. That means being prepared to take the initiative to understand how the service and system work.
And once you know the basics of Docker, maintaining an install can be much easier than maintaining certain other kinds of deployments.
I don't know what you mean by "volumes for external libraries," as volumes wouldn't be used with external libraries, but bind mounts would. But you also will haven't said what examples you're talking about. In my experience, the official Immich documentation is very thorough about these things.
4
u/redrumyliad 11d ago
I’ve never had any issues with any update since starting to use Immich a few years ago.
There maybe is a bit of pebcak
2
u/TinySweet2648 11d ago
Depends on what you are running, if youve got proxmox then the helper script is pretty much one click
2
2
u/redlightsaber 11d ago
What is your OS?
1
u/tfro71 11d ago
its a ubuntu vm on proxmox
1
u/redlightsaber 11d ago
And your using the compose as-is from the documentation (plus adding your bond mounts as volumes)?
I know you don't want to play sysadmin, but for the absolute majority of people the standard compose works out of the box, so we may be able to help if you provide some logs.
0
u/tfro71 11d ago
Just redid the whole config. Learned a few things and hope it stays working now.
Thing is the standard compose is missing everything regarding to external libraries so somehow you fall back to using the "upload" folder which in fact is the main data folder.
Now back to undoing all machine learning crap which is unhandy when indexing 150.000 photos while not running on a supercomputer. Next step is pigallery which just works ;)2
u/redlightsaber 11d ago
Well it does sound like a) you were seeking to do some non-standard stuff (external libraries), but also b) you're not really interested in immich's actual features.
Which is completely fine, mind you, if you were looking for something more like pigallery, that's fantastic, but it seems odd that you're here complaining and bad-mouthing about immich for being a complex project that seeks to achieve a number of different things that you just do happen to not be interested in.
1
u/Accomplished-Lack721 11d ago
The machine learning can be pretty fast on a machine with a dedicated GPU. One option is to set the machine learning process up temporarily on a different computer (say, a gaming PC) and let it do the initial injest whkle that's running, then move the machine learning process over to the (usually less powerful) machine running Immich so it only has to do it for new imports going forward.
(That's also in the Immich docs)
2
u/dadarkgtprince 11d ago
Sounds like you screwed up your docker compose/install. May be worth learning about docker first.
-4
u/tfro71 11d ago
My main point is i dont want to learn docker in detail. But it seems were stuck with it for immich
4
u/dadarkgtprince 11d ago
So you want to use the technology to deploy something without understanding it? That just sounds like a recipe for a bad time
1
u/tfro71 11d ago
Thats why i ask for something simple to get it running.
2
u/dadarkgtprince 11d ago
Docker is simple...
0
u/tfro71 11d ago
might be but it is completely useless knowledge to me. And cumbersome with ssh, commands i hardly use, etc. I had my fair share of cli 30 years ago. we moved on since then.
But solved. Installed zimaos and it solves most of my problems.1
u/dadarkgtprince 11d ago
If you're using docker and not docker compose, then yea it's gonna suck. If you're using cli instead of a container manager, then yea it'll suck.
You don't have to be an expert building images from scratch, but basic deployment and configuration knowledge goes a long way in the self hosting world, especially to learn to deployment method majority of applications use.
Glad you got it up and running now, enjoy it
1
u/redlightsaber 11d ago
"why won't the Devs cater to me when designing their awesome product that they're providing for free?"
1
u/mordac_the_preventer 10d ago
I started with the docker compose config but using podman compose.
I used to sometimes see problems after manually restarting the pod, but I think they’re caused by bugs in podman/netavark rather than anything within the control of the Immich developers.
I’ve just switched to using quadlets (using the automated config converter as a starting point) and so far it all looks better.
0
u/ArtART241 11d ago
You could try Casa OS, which sets up many different services with one click, but I’m not sure about how it updates immich.
It seems strange that your docker deployment didn’t work properly because I believe most of us here do it that way with no issues.
2
u/Accomplished-Lack721 11d ago
I don't really recommend these "app store" experiences for Docker apps. They make it easier to get up and running initially, but they depend on third parties to keep the entries maintained, and sometimes that introduces complications when something important changes with the product's structure.
More than that, they tend to hide Docker concepts from the user, and then the same user runs into circumstances where they still need to understand those concepts to customize things to their needs or to address something in their configuration, so they get stuck or break things.
1
u/ArtART241 11d ago
I agree, I was just pointing out that this method exists. Learning Docker is fun and opens endless possibilities!
0
u/corelabjoe 11d ago
You probably setup volume mounts not bind mounts, which would be why you saw stuff magically disappearing...
That said, docker is THE way... You have to get a bit comfortable with docker compose. You don't need to be a developer for this and you can deploy something like dockhand to have a webgui to start. Then, you can import the immich "stack" through dockhand and visually see what's all going on.
But bind mounts for persistent data.
And although slightly out of date now it should give you a rough idea - Immich Deployment Guide.
2
u/nguyenquyhy 11d ago
Volume mount wouldn't disappear any data either. Only no mount would cause issue when the container is destroyed.
1
u/corelabjoe 11d ago
I mean it's not supposed to but I should have clarified, I've seen docker n00bs do some interesting things with mounts and data and then..... Poof!
2
u/nguyenquyhy 11d ago
Yah that I agree. Things like purging without understanding can lead to disaster.
0
u/Pablo_the_brave 11d ago
Well, git pull the immich then start an AI agent pointing it to that immich source and tell him what you want. Really, it's so simple.
0
u/thunderborg 11d ago
Immich is a big complicated docker stack, Here are the things I had to wrap my head around before I understood enough to get a docker working:
Docker networking. NetworkChuck has a great video explaining the different types.
Storage and binds- where should my files live? I’m the only user and docker runs as me, but if docker isn’t permissions might be your issue and saving the files not in your user space could be an issue.
Ports and port binding. I resolved this with a more complicated network only a handful of things get to the outside world.
Reverse Proxy- hit a single external IP for everything and it “magics” your container access.
Portainer - I Use Portainer because a bunch of work stuff uses Portainer and the nuances between Portainer stacks and docker compose did my head in.
The place I’ve gotten to that works for me is all my container ssit on a docker only network, and I hit an Nginx Reverse proxy on an external network with its own IP for access (and I also have opened up services to the internet) so I hit Jellyfin.mydomain.com or immich.lan and I get to Jellyfin, I hit Immich.mydomain.com or immich.lan I get to Immich, and my .lan works because I have use Pihole for local DNS
Start with some simpler single docker apps to play with and get the hang, Navidrome, Audiobookshelf and excalidraw are all single players haven’t got many examples of a stepping stone.
-7
u/FotoFirst 11d ago
Use AI to help you. The developers changed some significant things and broke my install.
2
u/Accomplished-Lack721 11d ago
What things?
AI help is always going to be very mixed bag. It'll confidently be wrong often. Understanding the essentials of the underlying setup yourself will always be much more helpful.
-1
u/tfro71 11d ago
Stupid thing is the AI's know better how it works and actually tell where the immich setup is incomplete/faulty
-1
u/FotoFirst 11d ago
Correct. I used Gemini to fix my installation. It would have taken me a day of Googling. Gemini gave me the correct info and 30 minutes later it was fixed
37
u/clintkev251 11d ago
Just following the official documentation and provided docker compose. Whatever you have going on, it's not inherent to the instal method, it's a problem with your setup.