Infrastructure — Vue d'Ensemble¶
Source de vérité :
CLAUDE.md(racine du repo) est l'inventaire canonique des services. Ce document en est la version navigable/lisible — en cas de divergence, CLAUDE.md fait foi.
Serveur : srv759970.hstgr.cloud (69.62.108.82)
OS : Ubuntu 24.04.3 LTS (kernel 6.8.0-100-generic)
RAM : 16 GB
Disque : 193 GB (≈89 GB libre — 55%)
Swap : aucun ⚠️
Composants Infrastructure¶
🖥️ Serveur¶
- Ubuntu 24.04.3, 4 vCPU, 16 GB RAM, 193 GB SSD
- Utilisateur
automation(sudoer) - SSH sur port 22, ZeroTier VPN (10.77.208.85/24)
- systemd : 7 services custom + nginx + docker + php-fpm + mysql + fail2ban
🌐 Nginx Reverse Proxy¶
- 66 sites-enabled (≈30 stale à nettoyer)
- SSL via Let's Encrypt (certbot)
- Rate limiting, bot protection
- Écoute ports 80, 443, 11435
🗄️ Bases de Données¶
- PostgreSQL partagé (Docker, port 5432) → Cal.com, Umami, Wake Chain
- Redis partagé (Docker, port 6379) → Cache, queues
- MySQL natif (port 3306) → WordPress panneauxsolidaires.fr, jesuishyperphagique
- MySQL SolidarLink (Docker, port interne) → WordPress SolidarLink
🐳 Docker Architecture¶
- 21 conteneurs actifs sur 25 networks
- 20 images (12 GB total)
- 6 volumes (tous actifs)
- Réseau partagé
databases-sharedpour PostgreSQL/Redis - Portainer pour l'administration web
🤖 Services IA — LLM¶
- claude-code-openai-wrapper, rag-perf-proxy, Ollama, pi-daemon, RAIM (Hesiodus), Paperclip
💬 Interfaces de chat IA¶
- Open WebUI (RAG), LobeHub, Domo (vocal), Reading Coach Next, RAIM, Claudito, Paperclip
🎙️ Services TTS/STT¶
- Edge TTS local (port 8765), faster-whisper STT (port 9000), Cartesia, OpenAI TTS/STT, ElevenLabs/Kokoro (disponibles)
🔒 Sécurité¶
- Fail2ban : 6 jails (sshd, nginx-http-auth, opcode-auth, wordpress-auth/hard/xmlrpc)
- UFW : actif
- SSL : certbot auto-renew
- Basic Auth : sur services admin (Portainer, Glances, etc.)
- ZeroTier : VPN mesh pour accès sécurisé inter-machines
Inventaire Complet des Services (mai 2026)¶
Docker Containers (21 actifs)¶
| Conteneur | Port(s) | Rôle |
|---|---|---|
stalwart-mail |
25, 143, 465, 587, 993, 4190, 8443 | Serveur mail JMAP/IMAP/SMTP |
roundcube |
127.0.0.1:9100 | Webmail |
mailhog |
1025, 8025 | SMTP catch-all dev/test |
calcom + calcom-db |
127.0.0.1:3002 | Prise de RDV |
umami |
127.0.0.1:3003 | Web analytics |
postgresql-shared |
127.0.0.1:5432 | Base partagée |
redis-shared |
127.0.0.1:6379 | Cache/queue partagé |
dashy |
4000 | Dashboard portail |
portainer |
127.0.0.1:9000 | Admin Docker |
glances |
127.0.0.1:61208 | Monitoring système |
mkdocs |
8005 | Documentation |
audioguides |
8095 | App audioguides |
wake-chain |
8100 | Gestion dépendances services |
civ1-streaming |
127.0.0.1:8080 | Streaming Civilization |
cooking-manager |
3050 | Gestion recettes |
package-manager |
127.0.0.1:3100 | Gestion colis |
wordpress-solidarlink |
9000 (FPM) | WordPress SolidarLink |
mysql-solidarlink |
3306 (interne) | MySQL SolidarLink |
nginx-solidarlink |
9004 | Nginx SolidarLink |
wp-cli-solidarlink |
— | WP-CLI utilitaire |
PM2 Applications (4)¶
| App | Port | Status | Notes |
|---|---|---|---|
jokers-hockey |
5020 | ⚠️ 145 restarts | Next.js — crash loop |
jokers-webhook |
5021 | ✅ stable | Webhook receiver |
incluzhact |
5173 | ✅ stable | Vite dev server |
groupe-paroles |
5030 | ✅ stable | App groupes de parole |
Systemd Custom (4 actifs)¶
| Service | Port | Rôle |
|---|---|---|
contact-mailer |
3010 | Formulaire contact calatea-coaching.fr |
sendgrid-proxy |
3011 | Relay SMTP SendGrid |
gps-tracker |
8089 | GPS pour audioguides |
tts-service |
8765 | Edge TTS HTTP |
Autres Processus¶
| Processus | Port | Notes |
|---|---|---|
| MySQL natif | 3306, 33060 | Pour WordPress PHP-FPM |
| PHP 8.3 FPM | — | Pour WordPress natif (panneauxsolidaires) |
Cron Jobs¶
| Schedule | Commande | Rôle |
|---|---|---|
0 3 * * * |
backup-wordpress-full.sh |
Backup WP quotidien |
0 4 1 * * |
backup-infrastructure.sh |
Backup infra mensuel |
0 5 * * 0 |
find ... -delete |
Cleanup logs >30j |
0 3 * * * |
backup-media-stack-dropbox.sh |
Backup média → Dropbox |
* * * * * (root) |
check-dropbox-mount.sh |
Check mount rclone |
Réseaux & Connectivité¶
- Public :
69.62.108.82(eth0) - IPv6 :
2a02:4780:28:486c::1 - ZeroTier :
10.77.208.85/24(réseaumy-first-network) - Docker bridge : 25 réseaux (dont
databases-shared,webproxy)
Points d'Attention¶
Pas de Swap
Aucun swap configuré. Avec 52% RAM utilisée et 21 conteneurs, un pic d'utilisation peut causer un OOM kill.
79 Updates Disponibles
apt list --upgradable montre 79 paquets + 17 security updates ESM. System restart required.
SPOF
- nginx → tous les sites down
- postgresql-shared → Cal.com, Umami, Wake Chain down
- redis-shared → queues et cache down
- MySQL natif → WordPress panneauxsolidaires down
Dernière mise à jour : 2026-03-05