Vue d'ensemble de l'architecture
Architecture de la plateforme
Section intitulée « Architecture de la plateforme »Deployme.cloud est composée de plusieurs briques qui s’articulent pour offrir une expérience unifiée de déploiement Kubernetes.
Schéma global
Section intitulée « Schéma global »deployme.cloud → Cloudflare (DNS + CDN)│├── FRONTENDS (Netlify) ─────────────────────────────────────────│├── deployme.cloud → Vitrine publique (Astro)├── docs.deployme.cloud → Documentation (Starlight)├── app.deployme.cloud → Manager client (SvelteKit)├── admin.deployme.cloud → Panel admin, VPN only (SvelteKit)│├── BACKEND (VPS PulseHeberg FR, Docker Compose) ────────────────│├── api.deployme.cloud → API Core (Go + Caddy)├── auth.deployme.cloud → Zitadel OIDC (Caddy)│ └── PostgreSQL 17 + Valkey 8 (internes, non exposés)│└── OPTIONNEL ─────────────────────────────────────────────────── └── status.deployme.cloud → Page de statutComposants principaux
Section intitulée « Composants principaux »Interfaces web
Section intitulée « Interfaces web »| Interface | URL | Accès | Stack | Rôle |
|---|---|---|---|---|
| Vitrine | deployme.cloud | Public | Astro + TailwindCSS | Landing page, produit, pricing, contact |
| Docs | docs.deployme.cloud | Public | Starlight (Astro) | Documentation technique, guides, API ref |
| Manager | app.deployme.cloud | Authentifié (utilisateurs) | SvelteKit + TailwindCSS | Dashboard, création/gestion de clusters, monitoring, billing |
| Admin | admin.deployme.cloud | VPN uniquement | SvelteKit + TailwindCSS | Gestion infra, utilisateurs, métriques, support |
| Composant | Technologie | Rôle |
|---|---|---|
| API Core | Go + gRPC/REST | Control plane : auth, CRUD clusters, provisioning |
| PostgreSQL 17 | Base relationnelle | Stockage principal (API + Zitadel, bases mutualisées) |
| Valkey 8 | Cache (fork Redis BSD) | Sessions, cache de requêtes |
| Zitadel | Auth OIDC | Authentification, gestion des identités |
| Caddy v2 | Reverse proxy | TLS automatique via Let’s Encrypt |
Outils d’intégration
Section intitulée « Outils d’intégration » ┌───────────────────┐ │ Control Plane │ │ (API Core Go) │ └───────┬───────────┘ ┌─────────┬───────┼───────┬──────────┐ ▼ ▼ ▼ ▼ ▼ SDK Terraform CAPI Ansible CLI (Go,Py, Provider Collection TS)Infrastructure de production
Section intitulée « Infrastructure de production »Le backend tourne sur un VPS PulseHeberg (hébergeur français) dans un seul docker compose :
VPS (2 vCPU / 2 GB RAM)├── Caddy v2 → reverse proxy TLS (~15 MB)├── deployme-api → binaire Go (~30 MB)├── PostgreSQL 17 → base "deployme" + "zitadel" (~120 MB)├── Valkey 8 → cache (fork Redis BSD) (~20 MB)└── Zitadel → auth OIDC sur PG (~250 MB) Total : ~450 MBDNS et CDN
Section intitulée « DNS et CDN »Tout le trafic passe par Cloudflare qui assure :
- Résolution DNS
- CDN et cache des assets statiques
- Protection DDoS
- Certificats SSL/TLS
Les frontends sont déployés sur Netlify (auto-deploy depuis GitHub sur push main).
Flux CI/CD
Section intitulée « Flux CI/CD »Push sur main │ ├── GitHub Actions ── Lint + Tests + Build │ ├── Frontends ──────► Netlify auto-deploy ──► *.deployme.cloud │ └── API Go ─────────► Docker build → Push GHCR └── SSH → VPS : docker compose pull && up -d