espace-paie-odentas/GOTENBERG_COOLIFY_SETUP.md
odentas 04e9d54292 feat: Migrer génération PDF de PDFMonkey vers Gotenberg
- Remplacer PDFMonkey par Gotenberg (auto-hébergé sur VPS)
- Créer template Handlebars pour contrats (lib/templates/contract.hbs)
- Créer formateur de données (lib/contract-data-formatter.ts)
- Ajouter helpers Handlebars pour conditions et transformations
- Mettre à jour API route generate-pdf pour utiliser Gotenberg
- Ajouter GOTENBERG_URL dans .env.local (http://localhost:3001 pour dev)
- Créer script tunnel-gotenberg.sh pour dev local
- Ajouter documentation MIGRATION_GOTENBERG.md

Avantages:
- Souveraineté des données (pas d'API externe)
- Performance (génération locale)
- Coût (0€ vs abonnement PDFMonkey)
- Sécurité (Gotenberg non exposé publiquement)
2025-12-27 22:22:45 +01:00

1.4 KiB

Configuration Gotenberg avec tunnel SSH vers VPS Coolify

Option A : Exposer Gotenberg dans Coolify (RECOMMANDÉ)

  1. Dans Coolify, aller dans votre service Gotenberg
  2. Aller dans l'onglet "Domains"
  3. Ajouter un domaine : gotenberg.odnt.fr (ou un autre)
  4. Coolify va automatiquement configurer Nginx + Let's Encrypt
  5. Utiliser l'URL : https://gotenberg.odnt.fr

Ensuite dans .env.local :

GOTENBERG_URL=https://gotenberg.odnt.fr

Option B : Tunnel SSH pour test local (TEMPORAIRE)

Si vous voulez tester sans exposer Gotenberg publiquement :

# Créer un tunnel SSH qui forward le port local 3001 vers gotenberg:3000 sur le VPS
ssh -L 3001:gotenberg:3000 renaud@144.91.113.70 -N

# Laisser cette commande tourner dans un terminal
# Dans un autre terminal :
echo "GOTENBERG_URL=http://localhost:3001" >> .env.local

Vérification de la configuration Coolify

SSH dans le VPS et vérifier que Gotenberg tourne :

ssh renaud@144.91.113.70

# Vérifier que le container existe
docker ps | grep gotenberg

# Tester depuis le VPS (réseau interne)
docker exec $(docker ps -q -f name=gotenberg) curl -s http://localhost:3000/health

# Ou si vous avez curl sur le VPS
curl http://gotenberg:3000/health

Quelle option choisir ?

  • Option A : Si vous voulez utiliser Gotenberg en production → Exposer via domaine
  • Option B : Pour tests rapides uniquement → Tunnel SSH