← Back to blog
From the blogSelf-Hosting

I bought a Synology NAS and found another rabbit hole

· Updated 24 October 2026
Illustration of a four-bay home server connected to private services

In my first post in August 2023, I casually said I would write about my Synology NAS. I had already bought a DS923+ at an IT show that June, so I suppose I had no excuse. Then I started setting things up, found more things to set up, and somehow three years passed.

By August 2023 the NAS had become a proper project, even though we were still a month away from moving house. I wanted somewhere for our files and photos to live, but storage was only the respectable reason for buying it. I have enjoyed playing with servers and open-source software since I was 16. Give me a machine I can administer myself and I will eventually ask it to do far too many things. I later upgraded the DS923+ to 32 GB of RAM, which probably tells you how that went.

A cloud that belongs to us

The most ordinary part of the setup is also the part we use most. Synology Photos holds our family photos and Synology Drive keeps files in sync across our devices. I use Obsidian for notes, with the vault synced through Drive, so I can pick up the same notes wherever I am working. It feels good to have our own place for this instead of letting Google be the only keeper of every file and photo. I still use cloud services when they are useful, but I am no longer at their mercy for the things I want to keep under my own roof.

The NAS also became the new home for Home Assistant. My first HA proof of concept ran on a VM on my desktop in our old place, with a few switches and lighting rules. After we moved in September 2023, I built a fresh Home Assistant OS VM on the Synology. That has grown into a project of its own, with 95 automations as of October 2026. The NAS is the machine that gave it a permanent place to live.

Then I opened Container Manager

This is where the rabbit hole really started. Docker makes it tempting to try a new service because I can bring it up, give it its own configuration and see whether it earns a permanent place. The container list is a mix of things we use every day, maintenance tools and experiments I have parked for later. It is not a list of 24 services that all need to be running every minute.

Vaultwarden is one of the useful ones: a password manager I host myself, with its database alongside it. Portainer gives me a more comfortable view of the containers when I need to inspect, update or restart something. Synapse and its database run our household’s internal messaging platform, which we use through Element; coturn supports the calling side of that setup. There is also Guacamole for remote access. Several of these began as “let me see if I can get this working” and became services I would miss if I switched the NAS off.

The network group is where this overlaps most with Home Assistant. AdGuard Home handles DNS filtering, including per-device rules for YouTube and other services. I have an adguardhome-sync container to keep the AdGuard setup aligned across instances. NetAlertX and WatchYourLAN help identify devices on the network; Uptime Kuma tells me whether important services are still answering. They see different parts of the same house, so bringing their information into HA makes the checks more useful than a collection of separate dashboards.

The less glamorous containers are there because running services means maintaining them. Dozzle is handy for looking at logs, Watchtower helps with image updates, and Heimdall and Homepage have both had a turn as a front door to the services. Some of those are stopped in the current list because I am still deciding which approach I prefer. I would rather leave an experiment parked than pretend every container I have ever tried is production infrastructure.

I want to write a separate post about the container setup itself, especially Vaultwarden, Portainer, Synapse, AdGuard and the network tools. There is a lot more to say about how they fit together than a list of names can show.

Getting back in without opening up everything

I set up Tailscale so my important devices and services can talk to one another over a private network. I attach Tailscale sidecars to the containers I care about most, which lets me put each service on the tailnet instead of making the whole NAS one big doorway. The list includes sidecars for Hermes, Portainer, Uptime Kuma and Heimdall. Cloudflare Tunnel serves a different purpose for selected services I want to reach through a browser. I like having both options and deciding deliberately which route a service should use.

The NAS has also become a place to run Hermes Agent. Hermes itself runs on my server and uses various models through OpenRouter; I use it as a personal assistant for the devices and services the NAS can reach. Rather than opening several dashboards to investigate a problem, I can give Hermes a job and let it gather the relevant information. It has guardrails around what it can touch, and I still decide what changes are worth making. The point is to hand off the repetitive work, not give an agent free rein over our home.

That is probably the biggest change since I bought the DS923+. I started by learning how to host individual services. Now I spend more time thinking about how they can work together, how to keep them healthy and which jobs I can stop doing by hand. Server administration used to be something I played with when I had a spare machine at 16. Apparently I never grew out of it.

Yes, I host games on it too

I have hosted private worlds for the kids in Valheim, Satisfactory, Minetest and other sandbox games. I like being able to give them a place to play together without sending them to a random public server. The Satisfactory and Minetest containers are part of the current inventory; other games have come and gone depending on what we were playing.

Roblox is banned at home. Yes, I am that dad. We play Steam games on PCs, and the kids have heard my PC-master-race speech often enough to recite it back to me. Hosting our own game worlds is partly about control, but it is also an excuse for me to tinker with game servers and call it parenting.

Plex and Immich are still on my list to explore. I have no idea which one will stick or what new open-source thing will distract me before I get there. That is fine. Self-hosting is one of my favourite hobbies precisely because there is always another service to discover, configure, break and eventually make useful.