I use Cloudflare tunnel to make it available outside the home network. I've set up two DNS names – one for accessing it directly in the local network, and and a second one that goes through the tunnel. The Immich mobile app supports internal/external connection settings – it uses the direct connection when connected to home wifi, and the tunnel when out and about.
For uploading photos taken with a camera I either use immich-go (https://github.com/simulot/immich-go) or upload them through the web UI. There's a "publish to Immich" plugin for Adobe Lightroom which was handy, but I've moved away from using Lightroom.
I'm curious to know which one would suit me best.
You can still mount an object storage bucket to the filesystem, but it's not supported officially by Immich and you anyways have additional delay caused by the fact that your device reaches out to your server, and your server reaches out to the bucket.
It would be amazing (and I've been working on that) to have an Immich that supports natively S3 and does everything with S3.
This, together with the performance issues of Immich, is what pushed me to create immich-go-backend (https://github.com/denysvitali/immich-go-backend) - a complete rewrite of Immich's backend in Go.
The project is not mature enough yet, but the goal is to reach feature parity + native S3 integration.
I considered doing that too. My main problem with it is privacy. Let's say I set up some sort of dynamic DNS to point foo.bar.example.org to my home IP. Then, after some family event, I share an album link (https://foo.bar.example.org/share/long-base64-string) with friends and family. The album link gets shared on, and ends up on the public internet. Once somebody figures out foo.bar.example.org points to my home IP, they can look up my home IP at all times.
It’s not too bad. As others have said, AI makes it easy to get right.
Obligatory link: https://youtube.com/watch?v=SxdOUGdseq4
Our quickstart.sh[1] bundles Minio, but you can configure Ente to use RustFS[2] or Garage[3] instead.
[1]: https://ente.io/help/self-hosting/#quickstart
* With NixOS, you define the configuration for the entire system in one or a couple .nix files that import each other.
* You can very easily put these .nix files under version control and follow a convention of never leaving the system in a state where you have uncommitted changes.
* See the NixOS/infra repo for an example of managing multiple machines' configurations in a single repo: https://github.com/NixOS/infra/blob/6fecd0f4442ca78ac2e4102c...
I totally disagree. You do need a tiny bit of command line experience to install and update it (nothing more than using a text editor and running `docker compose up`), but that's really it. All administration happens from the web UI after that. I've been using Immich for at least 2 years and I've never had to manually do something other than an update.
> Immich solves the wrong problem. I just want the household to share photos - I don't want to host a Google Photos for others.
Honestly, I can't understand what exactly you're expecting. If Google Photos suits your needs for sharing photos with others, that's great! As for Immich, have you read how it started[0]? I think it's solved the problem amazingly well and it still stays true to its initial ambitions.
[0]: https://v1.142.1.archive.immich.app/docs/overview/welcome
Searching for "nextcloud ios background sync" shows a whole bunch of forum posts and bug reports about it not working well unless you have the application open.
One issue (https://github.com/nextcloud/ios/issues/2225) been open since 2022, seems to still be not working properly. Another (https://github.com/nextcloud/ios/issues/2497) been open since 2023.
For something that works well it seems like a ton of people have a lot of issues with it. Are you sure you're on the latest iOS version? Seems like people experience the issues when they're on a later version.
These things are a proxmox home lab user's lifeline. My only complaint is that you have to change your default host shell to bash to run them. You only have to do that for the initial container creation though.
as an un-solicited drive-by suggestion: see if they're owned by root? you may have sudo'd the original run.
since you're at least a few months behind though, do check for breaking changes: https://github.com/immich-app/immich/discussions?discussions... they've pretty consistently had instructions, but you unfortunately mostly have to know to look for it. not sure why the upgrade notification doesn't make it super incredibly painfully obvious.
> RAM: Minimum 4GB, recommended 6GB
Wow. When factoring in the OS, that's an entire system's worth of RAM dedicated to just hosting files!
What does it use all this for? Or is this just for when it occasionally (upon uploading new pictures) loads the image recognition neural net?
I'd have to stop Immich whenever I want to do some other RAM-heavy task. All my other services (including database, several web servers with a bunch of web services, a Windows VM, git server, email, redis...) + the host OS and any redundancy caused by using containers, use 4.6GB combined, peaking to 6GB on occasion
> CPU: Minimum 2 cores, recommended 4 cores
Would be good to know how fast those cores should be. My hardware is a mobile platform from 2012, and I've noticed each core is faster than a modern Pi as well as e.g. the "dedicated cores" you get from DigitalOcean. It really depends what you run it on, not how many of them you have
Also according to https://immich.app/cursed-knowledge the notify issue was fixed July 2024.
> It's not simpler than a container option and creates a single point of issue. The container option is tested and supported by Immich, they recommend it. I don't want to be beholden to NixOS for everything.
I think there's a misunderstanding here. You aren't beholden to NixOS here. You don't have to use nixpkgs nor home-manager modules. You can make your own flakes and you can use containers, but the benefit is still that you set it up declaratively in config.
It's not incompatible with anything you've said, it's just cool that it has default configurations for things if you aren't opinionated.
> I don't want to manage configurations in multiple places.
I've accumulated one big Nix config that configures across all my machines. It's kind of insane that this is possible.
Of course, it would seem complicated looking at the end result, but I iterated there over time.
Example: https://github.com/johnae/world -- fully maintained by a clanker (https://github.com/johnae/world/pulls?q=is%3Apr+is%3Aclosed)
I keep that running on a VPS, but with with proper firewalling you could probably run it on the same machine.