Deploiement
Comment mettre a jour l'application, rollback et gerer le cache Docker.
Mise a jour standard
Pour deployer une nouvelle version depuis le repo Git :
ssh -i ~/.ssh/vps_qovans root@81.22.222.96
cd /opt/qovans
git pull
docker compose -f docker-compose.prod.yml up -d --buildOu en une seule commande depuis votre machine locale :
ssh -i ~/.ssh/vps_qovans root@81.22.222.96 \
"cd /opt/qovans && git pull && docker compose -f docker-compose.prod.yml up -d --build"Le build prend environ 2-3 minutes. Le site reste accessible pendant le build — les anciens conteneurs tournent jusqu'a ce que les nouveaux soient prets.
Migrations de base de donnees
Si la mise a jour inclut des changements de schema (nouveau fichier dans alembic/versions/), appliquer les migrations avant de redemarrer le backend :
# Sur le VPS
cd /opt/qovans/backend
# Voir l'etat actuel
docker exec qovans-backend alembic current
# Appliquer les migrations
docker exec qovans-backend alembic upgrade headCache Docker frontend
Le frontend Next.js peut utiliser un build Docker en cache meme si le code a change. Si vos modifications frontend ne sont pas visibles en production :
# Forcer le rebuild sans cache
docker compose -f docker-compose.prod.yml build --no-cache frontend
docker compose -f docker-compose.prod.yml up -d frontendRollback
Si une mise a jour pose probleme, revenir a la version precedente :
cd /opt/qovans
# Voir les derniers commits
git log --oneline -10
# Revenir au commit precedent
git checkout <hash_du_commit>
# Rebuilder
docker compose -f docker-compose.prod.yml up -d --buildPour les migrations de base de donnees, rollback d'une migration :
docker exec qovans-backend alembic downgrade -1Verifier apres deploiement
# Backend repond
curl http://localhost:8000/health
# Cegid accessible
curl http://localhost:8000/api/test-cegid
# Frontend repond
curl -s -o /dev/null -w "%{http_code}" http://localhost:3000
# Pas d'erreurs dans les logs
docker logs qovans-backend --tail 20
docker logs qovans-frontend --tail 20