This commit is contained in:
Daniel Allaire 2026-03-13 11:46:14 -04:00
parent f66d6af105
commit 8ba326bc18

View file

@ -1,34 +1,28 @@
# Guide de déploiement — Groupe Méditation
## 27 modules · Debian Bookworm + NGINX + PostgreSQL 16
## 27 modules · Debian Bookworm + NGINX + PostgreSQL
Testé sur Debian 12 (Bookworm) avec un utilisateur `ansible` ayant accès sudo.
Principe : on utilise ce que Debian fournit. Pas de dépôt externe.
---
## 0. Prérequis système
```bash
sudo apt update
sudo apt update && sudo apt upgrade -y
sudo apt install -y curl ca-certificates gnupg
```
---
## 1. Installer PostgreSQL 16
## 1. Installer PostgreSQL
Debian Bookworm inclut PostgreSQL 15 par défaut. Pour le 16, ajouter le dépôt officiel PGDG :
On installe le PostgreSQL fourni par Debian Bookworm (version 15) :
```bash
sudo install -d /usr/share/postgresql-common/pgdg
sudo curl -o /usr/share/postgresql-common/pgdg/apt.postgresql.org.asc \
--fail https://www.postgresql.org/media/keys/ACCC4CF8.asc
echo "deb [signed-by=/usr/share/postgresql-common/pgdg/apt.postgresql.org.asc] https://apt.postgresql.org/pub/repos/apt bookworm-pgdg main" \
| sudo tee /etc/apt/sources.list.d/pgdg.list
sudo apt update
sudo apt install -y postgresql-16 postgresql-client-16
sudo apt install -y postgresql postgresql-client
sudo systemctl enable postgresql
sudo systemctl start postgresql
```
@ -53,13 +47,12 @@ sudo -u postgres psql -c "SELECT version();"
---
## 2. Installer Node.js 20
## 2. Installer Node.js
Debian Bookworm inclut Node.js 18. Pour le 20 :
On installe le Node.js fourni par Debian Bookworm (version 18) :
```bash
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt install -y nodejs
sudo apt install -y nodejs npm
```
Vérifier :
@ -146,6 +139,7 @@ sudo /opt/groupe-meditation/backend/venv/bin/python deploy/seed.py
```
Le script crée **interactivement** :
- Les 23 tables
- Les 10 postes prédéfinis
- La répartition par défaut des contributions (30/30/30/10)
@ -252,13 +246,13 @@ curl -s https://groupe-meditation.chezlepro.ca/api/health | python3 -m json.tool
## Dépannage
| Problème | Commande |
|----------|----------|
| API ne démarre pas | `sudo journalctl -u groupe-meditation -f` |
| Problème | Commande |
|------------------------|-------------------------------------------------------------------------------|
| API ne démarre pas | `sudo journalctl -u groupe-meditation -f` |
| Erreur base de données | `sudo -u postgres psql -d groupe_meditation -c "SELECT count(*) FROM groupes;"` |
| NGINX 502 | `sudo systemctl status groupe-meditation` |
| WeasyPrint échoue | `sudo apt install libpango-1.0-0 libpangocairo-1.0-0` |
| seed.py ImportError | Vérifier les noms de classes dans `backend/app/models/` |
| NGINX 502 | `sudo systemctl status groupe-meditation` |
| WeasyPrint échoue | `sudo apt install libpango-1.0-0 libpangocairo-1.0-0` |
| [seed.py](http://seed.py) ImportError | Vérifier les noms de classes dans `backend/app/models/` |
## Mise à jour de l'application