e19aeadc63
Signed-off-by: Gato <cedric@goutailler-olivier.fr>
51 lines
1.4 KiB
Markdown
51 lines
1.4 KiB
Markdown
# Bonsai — Stack complète
|
|
|
|
Stack Docker Compose unifiée pour l'application Bonsai : base de données, API et webapp.
|
|
|
|
Les images sont **buildées depuis les sources** de la branche `main` de chaque dépôt au moment du build. La clé SSH est transmise au build via un secret BuildKit — elle n'est jamais gravée dans les couches de l'image.
|
|
|
|
## Services
|
|
|
|
| Service | Image de base | Source |
|
|
|---------|--------------|--------|
|
|
| `db` | `postgres:16-alpine` | — |
|
|
| `api` | `eclipse-temurin:25-jdk` → `25-jre-alpine` | `Bonsai-api` (branche `main`) |
|
|
| `webapp` | `node:22-alpine` → `nginx:alpine` | `Bonsai-webapp` (branche `main`) |
|
|
|
|
## Prérequis
|
|
|
|
- Docker avec BuildKit activé (Docker 23+)
|
|
- Une clé SSH ayant accès au dépôt Gitea (`git.goutailler-olivier.com:2222`)
|
|
- Réseau Docker externe `proxy` (Traefik)
|
|
|
|
## Démarrage
|
|
|
|
```bash
|
|
# 1. Configurer les variables d'environnement
|
|
cp .env.example .env
|
|
# Éditer .env : définir POSTGRES_PASSWORD et SSH_KEY_PATH
|
|
|
|
# 2. Builder les images (clone + compile)
|
|
docker compose build
|
|
|
|
# 3. Démarrer la stack
|
|
docker compose up -d
|
|
```
|
|
|
|
## Mise à jour
|
|
|
|
Pour rebuilder depuis le dernier commit de `main` :
|
|
|
|
```bash
|
|
docker compose build --no-cache
|
|
docker compose up -d
|
|
```
|
|
|
|
## Arrêt
|
|
|
|
```bash
|
|
docker compose down
|
|
```
|
|
|
|
Les données PostgreSQL sont persistées dans `~/Applications/data/bonsai/db_data` et les fichiers uploadés dans `~/Applications/data/bonsai/uploads`.
|