this post was submitted on 24 Feb 2025
133 points (99.3% liked)

Selfhosted

42858 readers
548 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

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.

top 50 comments
sorted by: hot top controversial new old
[–] happydoors@lemm.ee 1 points 3 hours ago

My only issue with it is that on my iphone, the app constantly freezes and says I have 3 photos left to upload. It’s almost certain to freeze for a few minutes and the upload becomes stalled as well. This behavior made it take a long time to backup my library and it makes it a pain in the ass to share photos quickly with people. Popping into the webUI has none of these issues (just no uploading of my photos). I still quite love the app

[–] nucleative@lemmy.world 1 points 6 hours ago

Haven't checked in a while but is there any hope for cloud storage of the image library yet? I'm kind of holding out for S3 support because I don't want to manage multiple terabytes locally.

[–] jqubed@lemmy.world 45 points 1 day ago (2 children)

Your website hasa banner that says it uses cookies and that by using it I acknowledge having read the privacy policy, but if I click More Information it takes me to a page the wiki says want created yet.

[–] Shimitar@downonthestreet.eu 1 points 5 hours ago

i have double checked but i do not have any banner on my wiki at all... Where did you see one? The only cookie is a technical cookie only used for your preferences and no tracking.

[–] Shimitar@downonthestreet.eu 13 points 1 day ago (3 children)

Never noticed. I don't do anything with the cookies anyway, its just a docuwiki self hosted, no ads, no data collection, nothing. I don't even store logs.

I might need to write the privacy policy... Will do tomorrow.

[–] Atemu@lemmy.ml 4 points 8 hours ago

If you don't process any user data beyond what is technologically required to make the website work, you don't need to inform the user about it.

[–] starshipwinepineapple@programming.dev 10 points 1 day ago (1 children)

Im not familiar with doku wiki but here's a few thoughts

  • privacy policy is good to have regardless of what you do with rest of my comments
  • your site is creating a cookie "dokuwiki" for user tracking.
  • cookie is created regardless of user agreement, rather than waiting for acceptance (implied or explicit agreement). As in i visit the page, i click nothing and i already have the dokuwiki cookie.
  • i like umami analytics for a cookieless google analytics alternative. They have a generous free cloud option for hobby users and umami is also self hostable. Then you can get rid of any banner.
[–] Moonrise2473@feddit.it 10 points 1 day ago

The dokuwiki cookie is not for user tracking but for functional use. You don't need user consent for functional use. OP should remove the useless cookie banner altogether

[–] teawrecks@sopuli.xyz 1 points 21 hours ago

Afaik the cookie policy on your site is not GDPR compliant, at least how it is currently worded. If all cookies are "technically necessary" for function of the site, then I think all you need to do is say that. (I think for a wiki it's acceptable to require clients to allow caching of image data, so your server doesn't have to pay for more bandwidth).

[–] Sibbo@sopuli.xyz 9 points 1 day ago (2 children)

I'm using immich for half a year or so now. There only problem is that it did not chunked uploads. So one large video just never uploaded, and I had to use nextcloud to upload it instead. Otherwise, it's great.

[–] Shimitar@downonthestreet.eu 1 points 5 hours ago

Yes, i encountered this issue as well. Seems that tweaking NGINX setting helped. Still stupid that a large upload will stall all the others.

[–] retro@infosec.pub 2 points 23 hours ago

If you're self hosting Immich on your local network, I've gotten around this by setting the Immich app to use my local ip address while on my home wifi network.

[–] Darkassassin07@lemmy.ca 3 points 1 day ago (1 children)

I'm curious;

Which ML CLIP model did you go with, and how accurate are you finding the search results?

I found the default kinda sub-par, particularly when it came to text in images.

Switched to "immich-app/XLM-Roberta-Large-Vit-B-16Plus" and it's improved a bit; but I still find the search somewhat lacking.

[–] waitmarks@lemmy.world 7 points 1 day ago* (last edited 1 day ago) (1 children)

The best one I have found was one of the newer ones that was added a few months ago. ViT-B-16-SigLIP__webli

Really impressed with the accuracy even with multi word search like "espresso machine"

[–] Darkassassin07@lemmy.ca 1 points 23 hours ago (1 children)

How well does it do with text in images?

I often find searching for things like 'horse' will do a decent job bringing up images of horses, but will often miss images containing the word 'horse'.

[–] waitmarks@lemmy.world 1 points 23 hours ago

It does ok with that. better than the default model, but worse than the built in search on my phone.

[–] non_burglar@lemmy.world 7 points 1 day ago (1 children)

I love immich. I just wish for two things:

  • synchronised deletes on client server
  • the edit tools on mobile to actually work on the photo at hand instead of creating a new photo with new metadata. May as well not have the tools, tbh.
[–] Shimitar@downonthestreet.eu 3 points 1 day ago (2 children)

What is synchronized deletes on client server?

load more comments (2 replies)
[–] ReallyActuallyFrankenstein@lemmynsfw.com 5 points 1 day ago (2 children)

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 12 points 1 day ago (2 children)

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.

[–] Shimitar@downonthestreet.eu 1 points 5 hours ago (1 children)
[–] enumerator4829@sh.itjust.works 1 points 4 hours ago (1 children)

You mean ”hardcore WAF challenge”?

[–] Shimitar@downonthestreet.eu 1 points 3 hours ago

More like hardcoded WAF challenge.

[–] gray@pawb.social 3 points 1 day ago (2 children)

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 4 points 1 day ago (1 children)

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 2 points 21 hours ago (1 children)

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 1 points 4 hours 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 1 points 1 day ago (1 children)

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 1 points 4 hours 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.

load more comments (1 replies)
[–] Ulrich@feddit.org 2 points 1 day ago (32 children)

How did you do external backups?

[–] Lem453@lemmy.ca 2 points 1 day ago (1 children)

I used to use a docker container that makes db dumps of the database and drops it into the same persistent storage folder the main application uses. I use this for everything in docker that had a db.

Immich as recently integrated this into the app itself so its no longer needed.

All my docker persistent data is in a top level folder called dockerdata.

In that I have sub folders like immich which get mounted as volumes in the docker apps.

So now I have only 1 folder to backup for everything. I use zfs snapshots to backup locally (zfs auto shot) and borgmatic for remote backups (borgbase).

All my dockers all compose files that are in git.

I can restore he entire server by restoring 1 data folder and 1 compose file per stack.

[–] Ulrich@feddit.org 1 points 1 day ago (2 children)

I don't understand how that's helpful. If something is corrupted or my house burns down, a local backup is going to go with it. That's why I asked for external backups.

[–] Shimitar@downonthestreet.eu 0 points 5 hours ago

I have three tiers of backup. Never heard or the 3,2,1 rule?

3 backups 2 locations 1 offsite

I backup one time on an external disk connected to the server. A second time to another disk, connected on an OpenWRT router located in the patio. A third copy is uploaded to my VPS in the cloud.

not all three are symmetrical due to disk sizes. But critical data is always backed up on all three. Daily backups.

Restic do deduplication and encryption too, so actual data usage is really minimal and all is kept safe.

[–] Lem453@lemmy.ca 1 points 1 day ago

Borgbase is remote

load more comments (31 replies)
load more comments
view more: next ›