🚀 Guide Rapide - Docker Swarm Hetzner via Terraform Cloud UI
📝 Étapes Simples (100% via UI, sans terminal)
1️⃣ Obtenir Token Hetzner (2 min)
- Allez sur console.hetzner.cloud
- Security → API Tokens → Generate API Token
- Nom :
terraform-swarm - Permissions : Read & Write
- Copiez le token 📋
2️⃣ Créer Workspace Terraform Cloud (3 min)
- Connectez-vous à app.terraform.io
- New → Workspace
- Type : CLI-driven workflow
- Nom :
docker-swarm-hetzner
3️⃣ Configurer Variables (2 min)
Dans votre workspace → Settings → Variables :
Environment Variables (cliquez "Add variable") :
| Key | Value | Sensitive |
|---|---|---|
HCLOUD_TOKEN |
[votre-token-hetzner] | ✅ Yes |
Terraform Variables :
| Key | Value | Sensitive |
|---|---|---|
terraform_cloud_organization |
[votre-org] | ❌ No |
terraform_cloud_workspace |
docker-swarm-hetzner | ❌ No |
hcloud_token |
[votre-token-hetzner] | ✅ Yes |
4️⃣ Upload Configuration (2 min)
- Dans votre workspace → Overview
- Cliquez "Upload configuration"
- Sélectionnez tous les fichiers du projet
- Upload
5️⃣ Déployer (5 min)
- Actions → Start new run
- Plan : Vérifiez les ressources à créer
- Confirm & Apply ✅
- ⏱️ Attendez ~5 minutes
✅ C'est Tout !
Votre cluster Docker Swarm est prêt sur Hetzner !
📊 Ce qui est créé automatiquement
| Ressource | Quantité | Specs | Prix/mois |
|---|---|---|---|
| Managers | 3 | 2 vCPU, 4GB RAM | 17.49€ |
| Workers | 3 | 1 vCPU, 2GB RAM | 9.87€ |
| Load Balancer | 1 | 25k connections | 5.83€ |
| Volumes | 6 | 230GB total | 9.20€ |
| Floating IPs | 3 | IPv4 | 3.57€ |
| TOTAL | 45.96€ |
🌐 Accès aux Services
Après déploiement, dans Terraform Cloud → Outputs :
- load_balancer_ip : Votre application
- portainer_url : Interface Portainer
- grafana_url : Monitoring Grafana (admin/admin)
- ssh_manager_command : Commande SSH
⚙️ Personnalisation (Optionnel)
Changer la taille du cluster
Dans Variables Terraform Cloud, ajoutez :
- manager_count : 3 (défaut)
- worker_count : 3 (défaut)
Changer la région
location:nbg1(Nuremberg),fsn1(Falkenstein),hel1(Helsinki)
Changer les types de serveurs
manager_server_type:cx21(défaut) oucx31(plus puissant)worker_server_type:cx11(défaut) oucx21(plus puissant)
🔄 Mise à jour
- Modifiez les variables dans Terraform Cloud
- Actions → Start new run
- Confirm & Apply
🗑️ Suppression
- Settings → Destruction and Deletion
- Queue destroy plan
- Confirmez
💡 Tips
- Monitoring : Grafana et Prometheus sont pré-installés
- Backup : Snapshots automatiques activés
- Sécurité : Firewall configuré automatiquement
- Coût : ~46€/mois (10x moins cher qu'AWS)
❓ Support
- Token Hetzner : docs.hetzner.cloud
- Terraform Cloud : learn.hashicorp.com
C'est tout ! Pas de terminal, pas de Git, juste l'UI ! 🎉