Finally happish with my all-in-one homelab (20+ services and way too much tinkering)
from organicpu@lemmy.organic-server.org to selfhosted@lemmy.world on 31 Jul 15:33
https://lemmy.organic-server.org/post/434

After years of breaking things, I think I’m finally at a point where I’m genuinely proud of my setup -so naturally, I have to share it with you all.

This is my single-server do-everything box. The whole point was to kick as many big-tech cloud services out of my life as possible. Photos, passwords, code, chat, even ML -all running in my closet/corner.

The guts:

Nothing crazy by today’s standards, but honestly? It handles everything I throw at it without breaking a sweat.

The services:

Everything runs in LXC containers. If a service needs Docker, I run Docker inside the LXC - so each service gets its own dedicated container with its own Docker install. A couple of other things (like OpenWrt and DSM) live in VMs instead.

I’ve got the usual suspects - Immich for photos (goodbye Google Photos), Vaultwarden for passwords, and Matrix Synapse for chat. Networking side is Nginx Proxy Manager, WireGuard, Pi-hole, and OpenWrt routing traffic as well as DDNS-Updater to keep my domain up to date. Also running Gitea for my little coding projects, Kiwix for offline Wikipedia (because why not), Trilium for my scattered notes, homarr as the dashboard and of course lemmy, your reading this on it haha.

On the heavier side, I’ve got Ollama + Open WebUI running locally with GPU acceleration - the 3050 gets the job done.

Snapotter is in there too - it’s an open-source, self-hosted file toolkit with 200+ tools for images, video, audio, PDF, and document processing. I use it so I don’t have to rely on sketchy file conversion sites anymore. Convert, compress, OCR, strip metadata - all happens on my own hardware, files never leave my network. The GPU helps with some of the heavier image tasks too.

And yes - I’m running DSM (Arc Loader) in a VM with PCIe passthrough for the NAS. It’s a bit overkill, but I wanted proper storage virtualization with direct hardware access.

I also will not lie- the GPU sits idle most of the time, but it’s nice to have the acceleration.

Why LXC + Docker instead of just Docker?

I just like having each service in its own isolated container with its own Docker daemon. It makes backups and snapshots stupidly easy in Proxmox - when I inevitably screw something up at 1 AM (and I will), rolling back takes two clicks. Plus, it keeps dependency hell contained.

Dive into the Details

If you’re curious about the configs, the philosophy, or just want to see the messy reality behind the setup, head over to organic-server.org. You’ll find some more of my ramblings there.

Or, if you have a specific question, I’m always happy to chat here.

edit: I also forgot to mention I have degoog running. oops.

#selfhosted

threaded - newest

slazer2au@lemmy.world on 31 Jul 15:43 next collapse

Nextstep is Homepage with all your services on it.

organicpu@lemmy.organic-server.org on 31 Jul 18:10 next collapse

I mean, I kinda do- for public services on my website. but I don’t why I would do a dedicated one- when almost all need services authentication.

but I do use homarr for as an internal “homepage”/dashboard. Great idea though. <img alt="" src="https://lemmy.organic-server.org/pictrs/image/59adc345-9d25-46ff-b964-4330f63e8bc1.png">

slazer2au@lemmy.world on 31 Jul 19:50 collapse

Nice.

TediousTasks@piefed.social on 31 Jul 20:15 collapse

I spent an entire weekend doing this and then just sat there staring at it like the Wolverine looking at a picture meme.

FlexibleToast@lemmy.world on 31 Jul 15:45 next collapse

You have each “docker” container in there own lxc running docker? That’s a silly way to do it if I’m understanding correctly. You’re adding overhead to containers for little to no benefit. You could put them all in the same lxc or Proxmox supports OCI containers natively now.

curbstickle@anarchist.nexus on 31 Jul 15:55 next collapse

Proxmox supports OCI containers natively now

As of 9.1, and kind of. To be clear what its doing is not a drop-in replacement for docker, but using that image as a basis for an lxc - so you’re not just pulling a new image to update, more like re-deploying, so keep your stored data elsewhere, outside of the lxc. So what was handled by pulling an image or a change to a compose is done manually in proxmox now, but it does make things like backups/snapshots much more consistent and proxmox-native.

organicpu@lemmy.organic-server.org on 31 Jul 16:00 next collapse

I think the misunderstanding is that I’m running every single service as Docker inside its own LXC. That’s not actually what I’m doing.

I split things by service boundary. For example, Pi-hole + Unbound has its own LXC, Lemmy has its own LXC, Immich has its own LXC, etc. Most of those run natively in LXC without Docker at all.

Docker is only there where the application actually expects/benefits from it. I’m not adding a Docker layer everywhere just for the sake of it.

The reason I prefer this over one giant LXC with everything docker- inside. is the management side.

Yes, there is some overhead. But LXC containers are much lighter than VMs. They share the host kernel and use Linux namespaces/cgroups for isolation, so you’re not paying the cost of a full virtualized OS. The extra memory/CPU overhead is minimal compared to the management benefits I get from separating services.

The Docker overhead only exists on the services that actually need Docker. A lot of my services run directly in their own LXC without Docker at all.

Could I put everything into one LXC and run Docker Compose? Sure. It would probably work fine. But for my homelab, ease of maintenance and recovery is just as important as raw resource efficiency.

PlexSheep@infosec.pub on 31 Jul 18:28 collapse

My last gen Homeserver was like this too. It worked okay, but network configuration, especially port forwarding and ipv6 sucked.

My current generation is just debian stable again, it just works.

irmadlad@lemmy.world on 31 Jul 15:46 next collapse

Ahhh…yes. The PronMaster 6000

thagoat@lemmy.dbzer0.com on 31 Jul 15:51 next collapse

Congrats

gnufuu@lemmy.ca on 31 Jul 15:57 next collapse

Nice specs, nice setup. You might want to add another rainbow sticker or two, just in case :p

yaroto98@lemmy.world on 31 Jul 16:02 collapse

Wait, we’re putting stickers in the case now?

[deleted] on 31 Jul 16:02 next collapse

.

organicpu@lemmy.organic-server.org on 31 Jul 16:02 collapse

where are they in the case??? hahaha (edit: i am still getting used to lemmy comments, so i thought you said I had stickers in my case- I didn’t see you replied to someone haha)

yaroto98@lemmy.world on 31 Jul 16:14 next collapse

I believe by replying to my comment, per Lemmy rules, totally not mine. You’ve contractually agreed to putting at least 5, but no more than 100 rainbow stickers on the inside of your case.

Yes, you may call them “RGB”.

Yes, they make your NAS go faster.

Yes, they improve airflow, but only when oriented correctly.

No, they don’t make you less straight. They’re “closeted” officially.

gnufuu@lemmy.ca on 31 Jul 17:38 collapse

Welcome to Lemmy :), you’ll fit right in lmao

organicpu@lemmy.organic-server.org on 31 Jul 18:15 collapse

Thank you!!

ranslite@pie.dasneuland.de on 31 Jul 16:10 next collapse

I see ’nett hier’ sticker, i vote up.

Egonallanon@feddit.uk on 31 Jul 16:23 next collapse

Dope little setup. Love the BIOS sticker.

Rutrapio@piaille.fr on 31 Jul 15:42 next collapse

@organicpu love the stickers ! All of them ! :)
Have fun with your beauty beast.

organicpu@lemmy.organic-server.org on 31 Jul 16:23 collapse

Thanks!!!

tomkatt@lemmy.world on 31 Jul 16:24 next collapse

This is pretty cool, and I’m guessing the hardware doesn’t even break a sweat.

My entire setup runs on two AMD mini-PCs, one running a Ryzen 5700u with Proxmox for VM hosting, the other is a 5500u running bare metal Ubuntu.

Proxmox server hosts:

  • Asset UPnP
  • Jellyfin
  • Audiobookshelf
  • (formerly) Plex (I ditched it)
  • Lyrion
  • LRCLIB offline lyrics server (via LRCLIB DB dump)
  • Home Assistant VM
  • Navidrome instance

Probably a few other things I forgot about…

The bare metal Ubuntu server currently just runs Audiomuse-AI for music analysis, but when not scanning it’s generally idle. Only set this up because early versions of Audiomuse-AI didn’t play nice for me in a VM even when r running with CPU in host mode.

When the hardware gets cheaper I wouldn’t mind a full size server again with a dedicated GPU (I decommissioned my old one due to defective RAM), but for now the mini-PCs have been great. They’re quiet and absolutely sip power, so efficient and quiet.

organicpu@lemmy.organic-server.org on 31 Jul 18:02 collapse

Yea! It really doesn’t break a sweat. Most of the time it sits around 5-20W (legit jumps between 5W and 20W) while hosting everything, with around 5-15% CPU utilization. Though I do share it with other people, so it may not be as “idle” as I think it is. With all services stopped and nothing running, it obviously uses way less power.

I also have a Windows VM for someone else, which basically acts as a terminal server for development. They run Linux and need Windows for developing something, but they said “I don’t want Windows anywhere on my physical system”, so I gave them a VM to use instead.

I also like using my server as a playground to test things. It saves me having to install VM software on my PCs and keeps experiments separate.

Originally, I used GPU passthrough to a VM, but I stopped doing that because I wanted multiple services to be able to use the GPU while still keeping everything isolated. Unfortunately, my GPU isn’t nice enough for NVIDIA vGPU support.

So passing it directly into containers was the next best option - although definitely the more tedious route to set up. The efficiency gains are pretty nice though.

It also only pulls around 300W at max load (CPU + GPU), but the load is very variable and heavy usage isn’t that dramatic. Normal “heavy” use is closer to around 120W (CPU + GPU).

In the future, I’d love to move to an ARM-based server for even better efficiency, once the hardware becomes more readily available and practical for server use. The efficiency gains are really interesting, but the ecosystem and availability still need some time to catch up.

Also, your setup sounds really nice. Those mini-PC “servers” are honestly impressive for what they can do nowadays. The power efficiency and silence are hard to beat, and having two separate machines gives you a nice balance of reliability and flexibility. It’s cool seeing how far you can push small hardware with the right services.

dust_accelerator@discuss.tchncs.de on 31 Jul 16:30 next collapse

Nice setup! Might check out some services I didn’t know about yet.

But I might add one thing, because I am/was in the same boat: Friends Don’t Let Friends Use Ollama

statelesz@slrpnk.net on 31 Jul 18:28 next collapse

Woah, thanks for the article!

vogi@piefed.social on 31 Jul 20:48 collapse

Great article, they always gave of that energy tbh. But I did not bother and also didn’t use it enough that it would matter. Good to have a write up about it. Thanks for sharing.

tyler@programming.dev on 31 Jul 16:50 next collapse

Wait, what is this SnapOtter thing you mention? Apparently it’s based on some AI tool, but what has me really intrigued is its Whisper capabilities? There was another project I tried to use a few years ago called Willow, in order to have a VTT connection to home assistant. community.home-assistant.io/t/…/664916

The creator tragically died in a car accident soon after though and the project went kaput.

This looks like maybe it could do the same thing???

mesamunefire@piefed.social on 31 Jul 16:55 next collapse

Why is this labeled ai?

tofu@lemmy.nocturnal.garden on 31 Jul 18:28 next collapse

Öllamae probably

organicpu@lemmy.organic-server.org on 31 Jul 20:07 collapse

Ollama/Openwebui, Immich, Snapotter and cause degoog can use ollama.

jagermo@feddit.org on 31 Jul 17:35 next collapse

I broke my immich during an update, i ponder waiting for the next update or reinstalling it

dvoraqs@lemmy.world on 31 Jul 19:55 collapse

Might as well go for it. There will be more updates in the future.

ndupont@lemmy.blahaj.zone on 31 Jul 17:54 next collapse

I run docker within LXC too, but I have just a pair of docker instances with a collection of compose stacks on each. I really need stickers.

krashmo@lemmy.world on 31 Jul 18:40 next collapse

Same. When I first started down that path I kept finding posts about how it was impossible to set up and maintain but it’s been pretty painless for me. I basically had no clue what I was doing and I figured it out just fine.

meltedcheese@c.im on 31 Jul 19:11 collapse

@ndupont Stickers, yes. Colored sticks. I put little stickers all over the computers. Most stickers have mundane details (like host name, Subnet, etc.) but I also use a sticker for each major service. Everything else is documented in notebooks or spreadsheets. It’s probably overkill, but, between my memory and the home-grown gradual evolution of my #homelab, stickers really useful. I have 9 or so computers (rack-mounted), more controllers spread around (e.g., ESP32s running WLED, Pi Zeros), and nearly 250 individual devices for #homeautomation. I’m trying to learn about FOSS for configuration control but that’s slow going.

ndupont@lemmy.blahaj.zone on 31 Jul 19:42 collapse

250! Wow, I thought I was already nuts with my 42 ZigBee devices + 10 reflashed sonoff over WiFi and my 8 cameras, doorbell etc… Let’s round up to 60; you are way ahead (oO)

I run everything on a single N100 mini NAS/PC with a remote slave backup NAS and the odd raspberry pi.

I’m more concerned about having to document in case I die than being able to keep all in mind, so far

Decronym@lemmy.decronym.xyz on 31 Jul 18:30 next collapse

Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:

Fewer Letters More Letters
LXC Linux Containers
NAS Network-Attached Storage
Plex Brand of media server package

3 acronyms in this thread; the most compressed thread commented on today has 14 acronyms.

[Thread #68 for this comm, first seen 31st Jul 2026, 18:30] [FAQ] [Full list] [Contact] [Source code]

arschflugkoerper@feddit.org on 31 Jul 18:37 next collapse

Damn that case takes me back

irmadlad@lemmy.world on 31 Jul 18:51 collapse

I really like those big cases. Lots of room for expansion and cooling I’ve got an old CoolerMaster Cosmos II.

spoiler

<img alt="" src="https://lemmy.world/pictrs/image/fa9db8b8-c528-46be-8449-06f80c080b48.jpeg">

I took the bottom rails and retrofitted casters on it. It’s huge and hard to move around. Stands about 30" tall.

Shimitar@downonthestreet.eu on 31 Jul 19:31 collapse

Love the front sticker