Homelab

A Raspberry Pi homelab managed with Ansible and Docker Compose.

updated
2026-09-20
status
Active
type
Infrastructure
role
Infrastructure owner
impact
Runs and documents the core services behind my self-hosting experiments.
stack
Ansible / Docker Compose / Raspberry Pi / Traefik / Restic
license
MIT

Problem

I wanted a homelab that was useful rather than impressive. The goal was to learn self-hosting, run services I actually use, and keep the setup repeatable enough that rebuilding or moving services would not depend on memory.

Approach

The repository uses Ansible to prepare and operate Raspberry Pi Docker hosts, then deploys each service as a standalone Docker Compose project to a selected host. Persistent application data lives in explicit local paths under /exports/docker, rendered Compose projects remain under /opt, and Traefik routes local containers over a shared bridge network.

Services include Traefik, Dynamic DNS, Home Assistant, Homebox, Immich, Paperless-ngx, Omni Tools, and encrypted Restic backups to S3-compatible storage. Deployments validate configuration and existing state, pull images before replacement, use container health checks where possible, and keep sensitive values in Ansible Vault.

Result

The repository is both the deployment source and the operational memory for the homelab. It covers host setup, updates, status checks, reboots, local storage, service deployment, backup schedules, and restore notes without carrying a cluster orchestration layer that the current workload does not need.