This server is being archived as I am moving to a NixOS based installation.
This repository is still relevant if you have a Docker based solution.
Hi!
This is how I am currently self-hosting services on a Synology DS923+ (my first NAS/server).
Important
Disclaimer: This is my setup that works for me. I hope it helps you too.
The guidelines I am trying to follow:
- Security: I am not an expert, but I do my best.
- 3-2-1 Backups: to physical external drive, and encrypted to the cloud (backblaze).
- Reproducible: For the most part the services should run locally.
- DNS registration: Cloudflare.
- Reverse proxy:
traefik. - Authentication / Authorization:
pocket-idas OIDC provider for the apps that support it. - Remote access: Tailscale. There are other options but this was seamless.
Example of commands available once installed:
$ home-server up --all
$ home-server update serviceNote: during the first time, it might ask for sudo to set the docker data directories with the right ownership.
Requirements:
yq- Docker with
root(rootlessdockeris hit-and-miss for me). - Docker compose.
-
Add a
.env.local:export HOME_SERVER_ACME_EMAIL=... export HOME_SERVER_CNAME=...
-
Set
DNS-01 Challenge(see cloudflare docs). -
Depending on the service, copy and adapt the example secret/environment files.
-
We should be good to go:
$ ./bin/local.sh up traefik
-
Create the user in
pocket-id. -
Depending on the service, register the client in
pocket-id.