Files
formation-manager-itinova/DEPLOIEMENT-MANUEL.md
Manus Sandbox 71e419681e Checkpoint: Version finale avec guide de déploiement manuel sans Git
Contenu de cette version :

1. Corrections de bugs (versions précédentes) :
   - Bug d'inscription (procédure publique createPublic)
   - Bug email de confirmation (variables {{prenomApprenant}} et {{datesHTML}})
   - Amélioration interface templates d'emails

2. Scripts de déploiement VPS avec Git :
   - deploy-update.sh : Script automatique avec git pull
   - update-database.sql : Script SQL de mise à jour
   - INSTRUCTIONS-DEPLOIEMENT.md : Documentation complète
   - GUIDE-GIT.md : Guide Git pour débutants

3. Déploiement manuel SANS Git (NOUVEAU) :
   - DEPLOIEMENT-MANUEL.md : Guide complet déploiement manuel
   - deploy-update-manual.sh : Script de mise à jour sans git pull
   - Transfert via SFTP (FileZilla/WinSCP)
   - Procédure simplifiée étape par étape

Le client peut maintenant choisir :
- Option A : Déploiement avec Git (automatisé)
- Option B : Déploiement manuel via SFTP (plus simple)

Prêt pour le déploiement en production.
2025-12-03 05:16:38 -05:00

121 lines
2.1 KiB
Markdown

# Guide de déploiement manuel sur VPS (sans Git)
Ce guide vous permet de déployer votre application sur un serveur VPS sans utiliser Git.
---
## 📋 Prérequis
- Accès SSH au serveur VPS
- Client SFTP (FileZilla ou WinSCP)
- Fichiers téléchargés depuis Manus
---
## Étape 1 : Télécharger les fichiers depuis Manus
1. Dans Manus, onglet "Code" → "Download all files"
2. Extraire le ZIP dans un dossier temporaire
3. Supprimer ces dossiers avant transfert :
- `node_modules/`
- `dist/` ou `build/`
- `.env`
- `backups/`
---
## Étape 2 : Transférer les fichiers via SFTP
### Avec FileZilla
1. Télécharger : https://filezilla-project.org
2. Connexion SFTP :
- Hôte : votre-serveur.com
- Port : 22
- Utilisateur : votre-user
- Mot de passe : votre-password
3. Transférer les fichiers vers `/var/www/formation-manager-itinova/`
---
## Étape 3 : Se connecter en SSH
```bash
ssh votre-utilisateur@votre-serveur.com
cd /var/www/formation-manager-itinova
```
---
## Étape 4 : Configuration (première installation)
```bash
# Installer Node.js 22
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt-get install -y nodejs
# Installer pnpm et PM2
npm install -g pnpm pm2
# Créer le fichier .env
nano .env
```
Copier vos variables d'environnement, sauvegarder (Ctrl+X, Y, Entrée)
---
## Étape 5 : Installation
```bash
# Installer les dépendances
pnpm install
# Appliquer les migrations
pnpm db:push
# Compiler
pnpm build
# Démarrer
pm2 start npm --name "formation-manager" -- start
pm2 save
pm2 startup
```
---
## Étape 6 : Mise à jour (installations suivantes)
```bash
# 1. Sauvegarder la base de données
mkdir -p backups
mysqldump -h HOST -P PORT -u USER -pPASSWORD DATABASE > backups/backup-$(date +%Y%m%d-%H%M%S).sql
# 2. Arrêter le serveur
pm2 stop formation-manager
# 3. Transférer les nouveaux fichiers via SFTP
# 4. Mettre à jour
pnpm install
pnpm db:push
pnpm build
# 5. Redémarrer
pm2 restart formation-manager
```
---
## Vérification
```bash
pm2 status
pm2 logs formation-manager
```
---
**Bon déploiement ! 🚀**