Authenticate once
OIDC where supported; forward auth for services that do not speak it natively.
ByteGeist
Read the docs ↗
Infrastructure lab / ongoing project
ByteGeist is where I test infrastructure decisions for real: identity, observability, deployments, security, and recovery. It currently runs 26 Docker containers on Ubuntu at scale.
01 / Architecture
Public traffic terminates at Nginx Proxy Manager. Authentik handles identity before requests reach protected services. Metrics, logs, CI, and backups remain separate concerns, so each can fail or change without taking the whole stack with it.
OIDC where supported; forward auth for services that do not speak it natively.
Host and container metrics, centralized logs, and independent uptime checks.
Configuration lives in Git. Persistent data is backed up with rebuild notes.
02 / Selected systems
Not a catalog of logos—a record of what is running, why it exists, and what I learned building it.
01
Observability
Prometheus collects host and container metrics while Loki receives logs through Grafana Alloy. The dashboards answer practical questions: what is down, what changed, and which container is consuming the host.
02
Identity & security
Authentik provides SSO, OIDC, forward auth, and 2FA across eleven applications. CrowdSec watches hostile traffic and creates firewall decisions alongside key-only SSH, UFW, and TLS.
03
Development
Gitea stores infrastructure code and documentation. Woodpecker runs repository-linked pipelines, including the build and deployment path for this site.
04
Platform & recovery
Dashy keeps service access legible. The wiki records inventory, DNS, restore order, backup validation, and the steps required to rebuild the environment from a clean host.
03 / Lessons
Redirect URIs, claims, group mapping, and user provisioning all need to agree across both ends.
I track data location, dependencies, restore order, DNS, certificates, and validation—not just archive jobs.
A smaller dashboard that explains an incident is more useful than a wall of metrics nobody checks.
Every exposed service has a cost. SSO, least privilege, and fewer public endpoints keep that cost explicit.
Project notes
I use ByteGeist to practice the parts of infrastructure work that tutorials tend to skip: upgrades, failure modes, access policy, noisy logs, and recovery.
Open the documentation ↗