feat(build): publier les images API+web sur le registry Gitea et faire consommer compose aux packages — compose tire ${READABOOK_REGISTRY}/api|web au lieu de builder, scripts/publish.sh (buildx --push, labels OCI), override docker-compose.build.yaml pour le build local, chemin bibliothèque re-paramétrable via READABOOK_LIBRARY_HOST_PATH — évolution #50

This commit is contained in:
Git Agent
2026-08-30 09:13:58 +02:00
parent c17ea105a9
commit 2484fd1e09
7 changed files with 109 additions and 9 deletions

View File

@ -47,7 +47,8 @@ data/
library/ Dossier local à scanner, monté en lecture seule dans compose
storage/ Cache backend, notamment couvertures extraites
Dockerfile Image API
docker-compose.yaml Services API + web
docker-compose.yaml Services API + web depuis images publiees
docker-compose.build.yaml Override de build local des images API + web
pnpm-workspace.yaml Workspace monorepo
```
@ -72,7 +73,7 @@ Note sandbox constatée : sur Node 24 local, `better-sqlite3` peut nécessiter u
## Docker Compose
```bash
JWT_SECRET="replace-me" docker compose up --build
JWT_SECRET="replace-me" docker compose up
```
Services :
@ -85,6 +86,24 @@ Ports :
- Hôte `3000` -> conteneur `web:80`.
- LAPI est accessible depuis le navigateur via les routes proxifiées par Nginx : `/auth`, `/admin`, `/books`, `/progress`, `/healthz`.
Images par défaut :
- `${READABOOK_REGISTRY:-gitea.anthonybouteiller.ovh/blomios/readabook}/api:${READABOOK_TAG:-latest}`
- `${READABOOK_REGISTRY:-gitea.anthonybouteiller.ovh/blomios/readabook}/web:${READABOOK_TAG:-latest}`
Pour construire localement au lieu de tirer les images publiées :
```bash
READABOOK_TAG=local docker compose -f docker-compose.yaml -f docker-compose.build.yaml up --build
```
Pour publier les images vers le registry Gitea :
```bash
docker login gitea.anthonybouteiller.ovh
./scripts/publish.sh
```
## Frontend PWA
Le frontend est accessible sur `http://localhost:3000` en compose. Il expose les routes MVP :
@ -108,6 +127,8 @@ Volumes :
Variables principales :
- `READABOOK_REGISTRY` : préfixe registry/repository des images API et web.
- `READABOOK_TAG` : tag dimage utilisé par compose et par `scripts/publish.sh`.
- `JWT_SECRET` : secret JWT, à changer hors développement.
- `OPEN_LIBRARY_ENABLED=true|false` : active/désactive lenrichissement distant.
- `READABOOK_LIBRARY_HOST_PATH` : dossier hôte monté en lecture seule sur `/library`.