diff --git a/README.md b/README.md new file mode 100644 index 0000000..c96da96 --- /dev/null +++ b/README.md @@ -0,0 +1,44 @@ +# etm-terrain + +Bot Telegram terrain d'ETM-Schurig, conteneurisé : rapports des +techniciens, FAQ, SAV. Migré depuis le poste de développement. + +C'est l'**unique** processus qui écoute Telegram (un seul `getUpdates` +par token). Les autres composants de la VM (le scheduler) ne font +qu'**envoyer** des notifications. + +## Contenu du dépôt + +Le code de l'application — `main.py`, `config.py`, `handlers/`, +`services/`, `models/`, `scripts/`, `utils/` — vit ici, à la racine. + +Ce squelette fournit l'emballage Docker autour : + +- `Dockerfile` — construction de l'image +- `.dockerignore` — ce qui n'entre pas dans l'image +- `.env.example` — gabarit des variables d'environnement +- `.gitignore` + +## Données (volumes) + +Deux dossiers sont des volumes montés — **jamais** dans l'image, **jamais** +dans Git : + +- `data/` — index ChromaDB, base tickets, PDF source +- `sav_knowledge/` — index SAV + +Les PDF source (documentation Victron) se placent dans +`data/docs/Doc_8_Victron/` sur la VM. L'index ChromaDB se **reconstruit** +à partir d'eux (script de réindexation) — il n'a pas à être migré. + +## Lancement + +Ce dépôt n'a pas de `docker-compose` propre : le bot est démarré par le +compose chapeau du dépôt `etm-infra`. Voir `etm-infra/README.md`. + +## À savoir + +- **Ollama** : en conteneur, `localhost` ne pointe pas vers la VM. + Renseigner `OLLAMA_URL` avec l'adresse réelle d'Ollama dans le `.env`. +- Le `.env` est injecté par le compose chapeau (`env_file`) ; les + variables sont donc disponibles même sans fichier `.env` dans l'image.