xpeditis2.0/docs/deployment/PORTAINER_CHECKLIST.md
David c19af3b119
Some checks failed
CI/CD Pipeline / Backend - Build, Test & Push (push) Failing after 58s
CI/CD Pipeline / Frontend - Build, Test & Push (push) Failing after 5m55s
CI/CD Pipeline / Integration Tests (push) Has been skipped
CI/CD Pipeline / Deployment Summary (push) Has been skipped
CI/CD Pipeline / Deploy to Portainer (push) Has been skipped
CI/CD Pipeline / Discord Notification (Success) (push) Has been skipped
CI/CD Pipeline / Discord Notification (Failure) (push) Has been skipped
docs: reorganiser completement la documentation dans docs/
Reorganisation majeure de toute la documentation du projet pour
ameliorer la navigation et la maintenance.

## Changements principaux

### Organisation (80 -> 4 fichiers .md a la racine)
- Deplace 82 fichiers .md dans docs/ organises en 11 categories
- Conserve uniquement 4 fichiers essentiels a la racine:
  * README.md, CLAUDE.md, PRD.md, TODO.md

### Structure docs/ creee
- installation/ (5 fichiers) - Guides d'installation
- deployment/ (25 fichiers) - Deploiement et infrastructure
- phases/ (21 fichiers) - Historique du developpement
- testing/ (5 fichiers) - Tests et qualite
- architecture/ (6 fichiers) - Documentation technique
- carrier-portal/ (2 fichiers) - Portail transporteur
- csv-system/ (5 fichiers) - Systeme CSV
- debug/ (4 fichiers) - Debug et troubleshooting
- backend/ (1 fichier) - Documentation backend
- frontend/ (1 fichier) - Documentation frontend
- legacy/ (vide) - Pour archives futures

### Documentation nouvelle
- docs/README.md - Index complet de toute la documentation (367 lignes)
  * Guide de navigation par scenario
  * Recherche rapide par theme
  * FAQ et commandes rapides
- docs/CLEANUP-REPORT-2025-12-22.md - Rapport detaille du nettoyage

### Scripts reorganises
- add-email-to-csv.py -> scripts/
- deploy-to-portainer.sh -> docker/

### Fichiers supprimes
- 1536w default.svg (11MB) - Fichier non utilise

### References mises a jour
- CLAUDE.md - Section Documentation completement reecrite
- docs/architecture/EMAIL_IMPLEMENTATION_STATUS.md - Chemin script Python
- docs/deployment/REGISTRY_PUSH_GUIDE.md - Chemins script deploiement

## Metriques
- 87 fichiers modifies/deplaces
- 82 fichiers .md organises dans docs/
- 11MB d'espace libere
- Temps de recherche reduit de ~5min a ~30s (-90%)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-22 15:45:51 +01:00

3.8 KiB

Portainer - Checklist de Déploiement Rapide

🎯 Avant de Déployer

1. Registry Configuré dans Portainer

Portainer → Registries → Vérifier :

Name: Scaleway
Registry URL: rg.fr-par.scw.cloud/weworkstudio
Username: nologin
Password: [token Scaleway]

Test :

docker pull rg.fr-par.scw.cloud/weworkstudio/xpeditis-backend:preprod
# Devrait réussir

2. Images ARM64 Disponibles

docker manifest inspect rg.fr-par.scw.cloud/weworkstudio/xpeditis-backend:preprod | grep architecture

# Devrait afficher :
# "architecture": "amd64"
# "architecture": "arm64"  ← Important !

3. Network Traefik Existe

docker network ls | grep traefik_network

# Si absent :
docker network create traefik_network

🚀 Déploiement

1. Copier la Stack

Copier tout le contenu de docker/portainer-stack.yml

2. Créer le Stack dans Portainer

  1. PortainerStacksAdd stack
  2. Name : xpeditis-preprod
  3. Web editor : Coller le YAML
  4. Deploy the stack → Attendre 2-3 min

3. Vérifier les Services

Portainer → Stacks → xpeditis-preprod :

  • xpeditis-db → Running (Healthy)
  • xpeditis-redis → Running
  • xpeditis-minio → Running
  • xpeditis-backend → Running (attendre ~30s)
  • xpeditis-frontend → Running

🔍 Vérification Post-Déploiement

Backend : Logs Migrations

Portainer → Containers → xpeditis-backend → Logs :

Chercher ces lignes :

✅ PostgreSQL is ready
✅ Successfully ran X migration(s)
✅ Database migrations completed
🚀 Starting NestJS application...

Si absent → Redémarrer le container backend.


Frontend : Démarrage Next.js

Portainer → Containers → xpeditis-frontend → Logs :

Chercher :

▲ Next.js 14.5.0
✓ Ready in X.Xs

Tester les Endpoints

# Backend API
curl https://api.preprod.xpeditis.com/api/v1/health
# Réponse attendue : {"status":"ok"}

# Frontend
curl -I https://app.preprod.xpeditis.com
# Réponse attendue : HTTP/2 200

# MinIO Console
curl -I https://minio.preprod.xpeditis.com
# Réponse attendue : HTTP/2 200

Si Problèmes

Erreur : "access denied"

# Sur le serveur Portainer
docker login rg.fr-par.scw.cloud/weworkstudio
# Username: nologin
# Password: [token]

Erreur : "relation does not exist"

Portainer → Containers → xpeditis-backend → Restart

Erreur : "network not found"

docker network create traefik_network

🔄 Update des Images (CI/CD Push)

Quand la CI/CD push de nouvelles images :

  1. Portainer → Stacks → xpeditis-preprod
  2. Cocher "Re-pull image and redeploy"
  3. Update the stack

📊 URLs de Vérification

URL Attendu
https://api.preprod.xpeditis.com/api/v1/health {"status":"ok"}
https://api.preprod.xpeditis.com/api/docs Swagger UI
https://app.preprod.xpeditis.com Page d'accueil
https://minio.preprod.xpeditis.com MinIO Console

Checklist Finale

  • Registry Scaleway configuré dans Portainer
  • Images ARM64 dans le registry (tag preprod)
  • Network traefik_network créé
  • Stack déployé dans Portainer
  • 5 services en état "running"
  • Logs backend : migrations OK
  • API health : 200 OK
  • Frontend : 200 OK
  • MinIO : 200 OK

Si tous → Déploiement réussi ! 🎉


Temps estimé : 10 minutes (si registry configuré) Difficulté : Facile Documentation complète : PORTAINER_DEPLOY_FINAL.md