The project contains a set of ansible playbooks use to setup (and manage) a personal homelab infrastructure. The homelab runs on a Raspberry Pi 4 running on Rocky Linux. Currently using nord
theme.
- homer - A very simple static homepage for your server.
- portainer.io - A centralized service delivery platform for containerized apps.
- Watchtower - A container-based solution for automating Docker container base image updates.
- nginx proxy manager - Nginx reverse proxy manager with dashboard.
- pi-hole - A black hole for internet advertisements.
- Wireguard - Self-hosted VPN (optional: or use alternative service, e.g. (OpenVPN)) or Tailscale.
- healthchecks - A cron monitoring tool written in Python & Django.
- plex media server - Organizes video, music and photos from personal media libraries.
- photoprism - Photos App powered by Go and Google TensorFlow 🌈 ✨.
- Jellyfin - Jellyfin is a Free Software Media System that puts you in control of managing and streaming your media.
- vaultwarden - Alternative implementation of the Bitwarden server.
- nextcloud - ☁️ cloud Nextcloud server, a safe home for all your data.
- paperless-ngx - A supercharged version of paperless: scan, index and archive all your physical documents.
- NFS - A network filesystem using the NFS protocol.
- rdiff - Reverse differential backup tool, over a network or locally (or use similar ideas).
- home assistant - My self-hosting infrastructure, fully automated from empty disk to operating services. < 913D li class="task-list-item"> grocy - Grocy is a web-based self-hosted groceries & household management solution for your home.
- IOT stack: influxdb, grafana
- Roborocks: Automated home cleaning robot
- Tiny tiny RSS - Web-based news feed (RSS/Atom) reader and aggregator
- Code Server - Code-server is VS Code running on a remote server, accessible through the browser.
- Raspberry Pi 4 Model B 8GB: OKdo
- OS: Rocky Linux 8.5 wiki
- Storage - Sandisk microSDXC 128GB (
/
,ext4
) - Storage - Samsung Portable T7 Touch (
/mnt/data
,ext4
, NFS) - Storage - backup (planned)
- Use the
just
command runner to setup the homelab:
$ just
Available recipes:
create # Create/start a local development server
destroy # Destroy the local development server
dry-run # Dry-run default playbook
help # display help information
login # Login into the local development server
ping # Ping all hosts
pre-commit # Run pre-commit on all files
run # Run default playbook
test # Test inside the local development server
vault # Edit the secret vault file
- Add hosts into the
hosts.ini
file (example):
[homelab]
heimdall ansible_python_interpreter=/usr/libexec/platform-python
-
Modify group vars file
group_vars/all/vars.yml
-
Run
just dry-run
orjust run
to deploy the infrastructure.
- geerlingguy/ansible-for-devops - Ansible for DevOps examples.
- davestephens/ansible-nas - Build a full-featured home server or NAS replacement with an Ubuntu box and this playbook.
- notthebee/infra - IaC for my Linux/Unix machines
- awesome-selfhosted/awesome-selfhosted - A list of Free Software network services and web applications which can be hosted on your own servers
- khuedoan/homelab - Small and power efficient self-hosting infrastructure. Fully automated from empty disk to operating services
- abhilesh/self-hosted_docker_setups - A collection of my docker-compose files used to setup self-hosted services on Raspberry Pi 4 running 64-bit Raspberry Pi OS
- HQarroum/awesome-iot - 🤖 A curated list of awesome Internet of Things projects and resources.
- pfalcon/awesome-smarthome - Curated list of awesome SmartHome/Home Automation things (open and leaving users in control)
- microsoft/IoT-For-Beginners - 12 Weeks, 24 Lessons, IoT for All!
- frenck/awesome-home-assistant - A curated list of amazingly awesome Home Assistant resources.
- Hypfer/Valetudo - Cloud-free control webinterface for vacuum robots