diff --git a/common/cin-search-tt-migration-docker.md b/common/cin-search-tt-migration-docker.md index fe1be0e..6e27b2b 100644 --- a/common/cin-search-tt-migration-docker.md +++ b/common/cin-search-tt-migration-docker.md @@ -39,3 +39,30 @@ Audit etendu a tout /volume1/web/ : 4 apps Node y etaient hebergees hors-Docker. ## Reste a faire (hors scope automatisable) - Creer la regle reverse-proxy DSM `cin.bolbol.tn` -> `localhost:3094` - Creer le repo Gitea `bolbol/cin-search-tt` manuellement (token actuel insuffisant) et y pousser le code + +## Correctif post-deploiement (10/07/2026, meme session) + +Nabil a signale "Echec de l'envoi email" apres mise en prod. Deux bugs distincts trouves via les logs container : + +1. **SMTP code en dur dans server.js** — le transporter nodemailer n'utilisait PAS `config.smtp` + (qui lit le `.env`) mais des valeurs litterales : `host: 'ssl0.ovh.net'`, `user: 'contact@bolbol.tn'`, + `pass: '2L2u519wbolbol'`. Corriger le `.env` seul ne changeait donc rien. Patch : les 3 champs + (host/port/secure/auth) passes en `process.env.SMTP_*`. Le `From` des 2 `sendMail()` (etait + `contact@bolbol.tn`, adresse OVH desormais coupee) change pour `nabil.derouiche@ik.me` — + **Infomaniak rejette un From qui ne correspond pas au compte authentifie** (meme contrainte + deja documentee pour Baserow/Vaultwarden). +2. **BASEROW_API_URL en https:// echouait en interne** (`ECONNREFUSED 172.27.x.x:443`) — + sur le reseau Docker `n8n`, l'alias `baserow.bolbol.tn` resout directement vers le container + Baserow qui n'ecoute qu'en HTTP (port 80, cf. `ports-registry.md` : `3888->80`). Pas de TLS + en interne. Corrige en `http://baserow.bolbol.tn`. + +**Piege a capitaliser** : toujours verifier qu'un service qui lit un `.env` via `config.js` +utilise vraiment ce module partout — un `require('dotenv').config()` en tete de fichier +n'empeche pas des valeurs codees en dur ailleurs dans le meme fichier. Grep systematique +sur host/user/pass/api url avant toute migration de credentials. + +**Piege reseau** : `https://.bolbol.tn` ne fonctionne QUE depuis l'exterieur (WAN) ou +un service hors du reseau Docker `n8n` (TLS termine par le reverse-proxy DSM). Un container +sur le meme reseau `n8n` qu'un alias doit taper en `http://` sur le port interne reel du +service cible (verifier `ports-registry.md`), jamais supposer que le HTTPS est disponible +en interne.