29 lines
2.1 KiB
Markdown
29 lines
2.1 KiB
Markdown
# nyora-doc-api — Procédure de rebuild & déploiement
|
|
|
|
**Date** : 2026-07-09 (généralise nyora-doc-api-rebuild-footer-docx.md 04/07 ; historique footer clos)
|
|
**Tags** : infra, nyora-doc-api, docker, rebuild
|
|
|
|
## Règle de base
|
|
|
|
**`/app` est cuit dans l'image Docker, pas bind-monté** → toute modification de code dans `/mnt/docker/nyora-doc-api/app/` exige un **rebuild + recreate**. Un simple restart ne recharge rien.
|
|
|
|
## Procédure validée (depuis mcp-nas ou Mac)
|
|
|
|
1. Docker indisponible dans mcp-nas (socket retiré, audit 08/07) → passer par le Mac : `ssh -p 22222 Best0f@192.168.100.33`. Sur le host : docker = `/usr/local/bin/docker`, **sans sudo** (Best0f dans le groupe docker ; sudo échoue, pas de TTY).
|
|
2. Build : `cd /volume1/docker/nyora-doc-api && /usr/local/bin/docker compose build` (~2 min, pip timeout 180 déjà dans le Dockerfile).
|
|
3. Déploiement : `docker stop nyora-doc-api && docker rm nyora-doc-api && docker compose up -d` — **jamais un simple restart**, l'image ne serait pas rechargée. Alternative sans SSH : `nohup` côté host (cf. session 08/07).
|
|
4. Health : `curl http://172.17.0.1:3050/health` → 200.
|
|
5. Vérifier code container == disque == Gitea : `docker exec nyora-doc-api cat /app/services.py | diff - /volume1/docker/nyora-doc-api/app/services.py`.
|
|
|
|
## Test /v1/generate — pièges
|
|
|
|
- Endpoint **multipart/form-data**, pas JSON : `curl -F "format=docx" -F "data=</tmp/data.json"` + header `X-API-Key` (clé dans hermes-platform/.env). Un POST -d JSON → 422 "body.format missing".
|
|
- Payload avec apostrophes françaises : toujours dans un fichier, jamais inline.
|
|
|
|
## Historique (clos)
|
|
|
|
- 03-04/07 : footer Nyora ajouté aux DOCX (n'avait jamais existé) puis déployé.
|
|
- **08/07 (commits a7380268 + f7353419) : footers retirés de TOUS les formats** (DOCX/PPTX/PDF/XLSX) sur décision Nabil, et option `restyle=full` implémentée pour le mode template (voir common/nyora-doc-api-template-restyle-cause-racine.md). Les vérifications XML de footer des anciennes versions ne s'appliquent plus.
|
|
|
|
Guide d'usage API : common/nyora-doc-api-hermes-guide.md.
|