Architecture technique
Vue d'ensemble des services Docker, reseaux, bases de donnees et flux de donnees de l'ecosysteme D1DEV.
Services Docker (29 sous-domaines)
| Service | URL | Stack | Role |
|---|---|---|---|
| Drupal | drupal.d1dev.fr | Drupal 11 / PHP 8.3 | CMS principal |
| Symfony API | api.d1dev.fr | Symfony 7 / PHP 8.3 | API REST + jobs async |
| Kanban | kanban.d1dev.fr | Symfony 7.4 + API Platform | Gestion projets Agile |
| PrestaAdmin | prestadmin.d1dev.fr | Symfony 7.4 + EasyAdmin | Back-office multi-tenant |
| API GPA | api-gpa.d1dev.fr | Symfony 7.4 + API Platform | API pieces auto |
| Search App | search.d1dev.fr | React 18 + Vite | Recherche facettee |
| Widget | widget.d1dev.fr | React 18 + Vite UMD | Widget JS embedable |
| Kanban Front | projet.d1dev.fr | React 18 + Vite | Board Kanban visuel |
| RemSign | remsign.d1dev.fr | Figma Make (React) | Signature electronique |
| RemDoc | remdoc.d1dev.fr | Figma Make (React) | Gestion documentaire |
| RemFlow | remflow.d1dev.fr | Figma Make (React) | Workflow documents |
| RemUnified | remunified.d1dev.fr | Figma Make (React) | Portail commercial |
| DocuSeal | sign.d1dev.fr | Ruby / Puma | Moteur de signature |
| Indexation | indexation.d1dev.fr | PHP | ETL references GPA |
| Proxy GPA | proxy-gpa.d1dev.fr | Node.js | Proxy enrichi GPA26 |
| Proxy RestoNoble | proxy-restonoble.d1dev.fr | Node.js | Proxy RestoNoble |
| Traefik | traefik.d1dev.fr | Traefik v2.11 | Reverse proxy + TLS |
| Flame | all.d1dev.fr | Flame | Dashboard |
| Dozzle | all.d1dev.fr/logs | Dozzle | Logs Docker |
| Glances | all.d1dev.fr/monitor | Glances | Monitoring systeme |
| Git Dashboard | all.d1dev.fr/git | nginx + HTML | Historique git |
| Metabase | metabase.d1dev.fr | Metabase | Analytics / BI |
| n8n | n8n.d1dev.fr | n8n | Automatisation |
| Solr | solr.d1dev.fr | Solr 9 | Recherche full-text |
| Tika | tika.d1dev.fr | Apache Tika | Extraction texte |
| Mailpit | mail.d1dev.fr | Mailpit | Email dev capture |
| Adminer | adminer.d1dev.fr | Adminer | Admin PostgreSQL |
| PHPMyAdmin | phpmyadmin.d1dev.fr | PHPMyAdmin | Admin MariaDB |
| RemAll | remall.d1dev.fr | nginx + HTML | Portail documentation |
Reseaux Docker
Deux reseaux isolent les services publics (routable par Traefik) des services internes (bases de donnees).
| Reseau | Type | Services |
|---|---|---|
d1dev_web |
Public / Traefik | Traefik, Drupal, Symfony API, PrestaAdmin, Kanban, API GPA, Search, Widget, RemSign, RemDoc, RemFlow, RemUnified, Solr, n8n, Metabase, Flame, Dozzle, Glances, Mailpit, Adminer, PHPMyAdmin, Tika, DocuSeal, Indexation, Proxy GPA |
default |
Interne | MariaDB, PostgreSQL, Redis, Qdrant, Ollama + tous les services applicatifs qui parlent aux BDD |
Bases de donnees
MariaDB 10.11 (5 bases)
| Base | Service |
|---|---|
drupal_db | Drupal CMS |
symfony_api | Symfony API |
kanban_db | Kanban |
prestadmin_db | PrestaAdmin |
api_gpa_db | API GPA |
PostgreSQL 16 (3 bases)
| Base | Service |
|---|---|
n8n_db | n8n |
metabase_db | Metabase |
docuseal_db | DocuSeal |
Autres stores
| Service | Role |
|---|---|
| Redis 7 | Cache + transport Messenger (Symfony API, API GPA) |
| Solr 9 | Recherche full-text (cores: commerce_products, documents, references_gpa) |
| Qdrant | Base vectorielle pour recherche semantique |
| Ollama | LLM local (llama3.2-vision:11b) |
Flux de donnees principaux
PrestaShop (externe)
|
v
Drupal (prestashop_sync module) ---> Solr (commerce_products)
|
v
Search App (UI facettee) <--- Solr (query directe)
Kanban (API Platform)
|
v
Orchestrateur (bash polling) ---> Claude Code (agents specialises)
|
v
Git commit + Story accepted
Nutch (crawl web)
|
v
Solr (documents) <--- Symfony API (document_index processor)
^
|
Tika (extraction PDF/Word) <--- Symfony API (fetch + extract)
API GPA
|
+--> Solr (references_gpa) --- recherche full-text
+--> Qdrant (vecteurs) --- recherche semantique
+--> Ollama (vision) --- analyse images pieces
RemSign (frontend)
|
v
DocuSeal API (templates, soumissions)
|
+--> Email (Brevo SMTP)
+--> SMS (Twilio)
+--> Stockage signe (PostgreSQL + fichiers)