DevOps2024-2025

Homelab Raspberry Pi

Infrastructure auto-hébergée complète sur Raspberry Pi 5 : plus de 15 conteneurs en cours d'exécution, monitoring Grafana et accès sécurisé Cloudflare.

DockerRaspberry PiGrafanaPrometheusCloudflareNginxLinuxNextcloudPi-hole

Infrastructure & Hardware

Serveur domestique basé sur Raspberry Pi 5 pour l'auto-hébergement de services personnels et professionnels. Hardware : - Raspberry Pi 5 Model B Rev 1.1 (16GB RAM) - SSD NVMe 1 To, avec une partition principale de 500 Go - Boîtier Pironman 5 avec ventilation active - Alimentation officielle 27W USB-C Système : - Debian 12 (Bookworm) aarch64 - Kernel 6.6.74+rpt-rpi-2712 - Docker Engine avec plus de 15 conteneurs en cours d'exécution Organisation des données : - /srv/docker/ — Services principaux (Nextcloud, Jellyfin, monitoring, etc.) - /srv/data/ — Données persistantes - /srv/backups/ — Sauvegardes automatisées - /home/user/docker/ — Services auxiliaires (Watchtower, Cloudflared)
16GB
RAM
1 To NVMe
Stockage
15+
Containers
24/7
Uptime
Portainer - Vue des containers
Portainer : 15 containers Docker avec statuts, images et stacks

Services Auto-hébergés

Plus de 15 conteneurs en cours d'exécution, couvrant stockage cloud, média, DNS et gestion d'infrastructure. Cloud & Stockage : - Nextcloud 29 — Cloud personnel avec synchronisation fichiers, contacts, calendrier - MariaDB 11.4 — Base de données pour Nextcloud - Redis 7 — Cache pour Nextcloud (sessions, file locking) - Cron Nextcloud — Tâches planifiées (nettoyage, indexation) Média & Divertissement : - Jellyfin — Serveur média personnel (films, séries, musique) - Streaming adaptatif et transcodage hardware Réseau & DNS : - Pi-hole — Serveur DNS avec blocage publicitaire réseau - Résolution DNS pour tout le réseau local - Listes de blocage personnalisées Gestion Infrastructure : - Portainer CE — Interface web de gestion Docker - Visualisation des containers, logs, volumes, réseaux - Déploiement de stacks via l'interface
Nextcloud
Cloud
Jellyfin
Média
Pi-hole
DNS
Portainer
Gestion
Pi-hole Dashboard
Pi-hole : 7200+ requêtes DNS, 11.8% bloquées, 75K domaines en blocklist

Monitoring & Observabilité

Stack de monitoring complète pour la surveillance temps réel du système et des containers. Collecte de métriques : - Prometheus — Base de données time-series, scraping toutes les 15s - Node Exporter — Métriques système (CPU, RAM, disque, réseau) - cAdvisor — Métriques containers (utilisation ressources par container) Visualisation : - Grafana — Dashboards interactifs et alerting - Dashboard Node Exporter Full (métriques système détaillées) - Dashboard Docker/cAdvisor (santé des containers) - Alertes configurables (seuils CPU, RAM, disque) Métriques collectées : - CPU : utilisation, température, fréquence - RAM : utilisée, disponible, cache, swap - Disque : I/O, espace, latence - Réseau : bandwidth, packets, erreurs - Containers : CPU, mémoire, I/O par container
Prometheus
Métriques
Grafana
Dashboards
Node Exporter
Host
cAdvisor
Containers
Grafana Dashboard Docker
Grafana : monitoring temps réel CPU, mémoire et réseau par container

Réseau & Sécurité

Architecture réseau sécurisée avec accès externe via tunnel Cloudflare et reverse proxy. Accès externe : - Cloudflared — Tunnel Cloudflare Zero Trust - Pas d'ouverture de ports sur le routeur - Chiffrement TLS de bout en bout - Protection DDoS Cloudflare Reverse Proxy : - Nginx Proxy Manager — Gestion centralisée des proxies - Certificats SSL Let's Encrypt automatiques - Routing par domaine/sous-domaine - Interface web de configuration Réseaux Docker : - proxy — Réseau pour les services exposés (NPM, Cloudflared) - internal — Réseau isolé pour les services internes - monitoring — Réseau dédié stack Grafana/Prometheus Sécurité : - Aucun port exposé directement sur Internet - Authentification Cloudflare Access sur services sensibles - Isolation réseau entre services - Mises à jour automatiques via Watchtower
Cloudflare
Tunnel
NPM
Proxy
Let's Encrypt
SSL
0
Ports ouverts

Automatisation & CI/CD

Pipeline de déploiement continu pour les projets personnels avec mise à jour automatique des services. Watchtower : - Surveillance des registries Docker (Docker Hub, GHCR) - Pull automatique des nouvelles images - Redémarrage graceful des containers mis à jour - Notifications de mise à jour Pipeline Portfolio : - GitHub Actions build l'image Docker à chaque push - Push vers GitHub Container Registry (ghcr.io) - Watchtower détecte la nouvelle image - Déploiement automatique sur le Raspberry Pi - Zero-downtime deployment Workflow type : 1. git push sur main 2. GitHub Actions : build + push image 3. Watchtower : pull nouvelle image (< 5 min) 4. Container redémarré avec nouvelle version 5. Site live avec les changements Backups : - Scripts de backup automatisés - Sauvegarde des volumes Docker - Rétention configurable - Stockage dans /srv/backups/
Watchtower
Auto-update
GitHub Actions
CI/CD
GHCR
Registry
< 5 min
Déploiement
  _____  _____ _____
 |  __ \|  __ \_   _|
 | |__) | |__) || |
 |  _  /|  ___/ | |
 | | \ \| |    _| |_
 |_|  \_\_|   |_____|

Auto-hébergé sur Raspberry Pi 5

~/links

$ echo "Fait avec passion"

© 2026 Abdel Touati