Hi fellow self-hoster.

Almost one year ago i did experiment with Immich and found, at the time, that it was not up to pair to what i was expecting from it. Basically my use case was slightly different from the Immich user experience.

After all this time i decided to give it another go and i am amazed! It has grown a lot, it now has all the features i need and where lacking at the time.

So, in just a few hours i set it up and configured my external libraries, backup, storage template and OIDC authentication with authelia. All works.

Great kudos to the devs which are doing an amazing work.

I have documented all the steps of the process with the link on top of this post, hope it can be useful for someone.

  • ReallyActuallyFrankenstein@lemmynsfw.com
    link
    fedilink
    English
    arrow-up
    5
    ·
    3 days ago

    Thank you for this. I plan to look at the authentication part more closely, but that’s the part I can’t quite figure out (being an amateur at this stuff but still trying), since I’m nervous with just a password accessing it remotely or from the phone.

    Authelia, NGINX, there is so much that’s confusing to me, but this might help.

    • enumerator4829@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      12
      ·
      3 days ago

      I’d recommend setting up a VPN, like tailscale. The internet is an evil place where everyone hates you and a single tiny mistake will mess you up. Remove risk and enjoy the hobby more.

      Some people will argue that serving stuff on open ports to the public internet is fine. They are not wrong, but don’t do it until you know, understand and accept the risks.(’normal_distribution_meme.pbm’)

      Remember, risk is ’probability’ times ’shitshow’, and other people can, in general, only help you determine the probability.

      • gray@pawb.social
        link
        fedilink
        English
        arrow-up
        4
        arrow-down
        1
        ·
        2 days ago

        good general advice until you have to try to explain to your SO the VPN is required on their smart TV to access Jellyfin.

        • enumerator4829@sh.itjust.works
          link
          fedilink
          English
          arrow-up
          4
          ·
          2 days ago

          Then you expose your service on your local network as well. You can even do fancy stuff to get DNS and certs working if you want to bother. If the SO lives elsewhere, you get to deploy a raspberry to project services into their local network.

          • pirat@lemmy.world
            link
            fedilink
            English
            arrow-up
            2
            ·
            2 days ago

            deploy a raspberry to project services into their local network

            This piqued my interest!

            What’s a good way of doing it? What services, besides the VPN, would run on that RPi (or some other SBC or other tiny device…) to make Jellyfin accessible on the local network?

            • enumerator4829@sh.itjust.works
              link
              fedilink
              English
              arrow-up
              1
              ·
              2 days ago

              Well, I’d just go for a reverse proxy I guess. If you are lazy, just expose it as an ip without any dns. For working DNS, you can just add a public A-record for the local IP of the Pi. For certs, you can’t rely on the default http-method that letsencrypt use, you’ll need to do it via DNS or wildcards or something.

              But the thing is, as your traffic is on a VPN, you can fuck up DNS and TLS and Auth all you want without getting pwnd.

        • AtariDump@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          2 days ago

          It’s one thing to expose a single port that’s designed to be exposed to the Internet to allow external access to items you don’t care if the entire internet sees (Jellyfin).

          Ots other thing when you expose a single port to allow access to items you absolutely do care if the entire internet sees (Immich).

          • enumerator4829@sh.itjust.works
            link
            fedilink
            English
            arrow-up
            1
            ·
            2 days ago

            If you’ve taken care to properly isolate that service, sure. You know, on a dedicated VM in a DMZ, without access to the rest of your network. Personally, I’d avoid using containers as the only barrier, but your risk acceptance is yours to manage.

    • Shimitar@downonthestreet.euOP
      link
      fedilink
      English
      arrow-up
      3
      arrow-down
      1
      ·
      3 days ago

      Feel free to ask, even in pm, if I can help. Not a guru myself, but getting a bit more experience overtime.