[FIX] Qdrant URL hostname drift-proof (RAG produzione) + recreate app

L'IP hardcoded Qdrant 172.21.0.5 era driftato a .3 (container senza IP statico) e
con php-fpm clear_env=no la env QDRANT_URL=172.21.0.5 (morta) veniva usata -> RAG web rotta.
Fix: QDRANT_URL e fallback VectorService usano l'hostname http://nis2-qdrant:6333,
risolto via Docker DNS sia in CLI sia in php-fpm. Verificato retrieval end-to-end (287 chunk).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
DevEnv nis2-agile 2026-05-29 17:22:54 +02:00
parent 0330bcf29d
commit 94d7867cea
2 changed files with 2 additions and 2 deletions

View File

@ -19,7 +19,7 @@ class VectorService
$url = getenv('QDRANT_URL')
?: ($_SERVER['QDRANT_URL'] ?? null)
?: ($_ENV['QDRANT_URL'] ?? null)
?: 'http://172.21.0.3:6333'; // IP nis2-qdrant (agg. 2026-05-29: era .5, container con IP dinamico driftato). TODO: assegnare ipv4_address statico in docker-compose per evitare ricorrenze.
?: 'http://nis2-qdrant:6333'; // hostname Qdrant (agg. 2026-05-29): drift-proof. L'IP hardcoded .5 era driftato a .3; con clear_env=no php-fpm eredita QDRANT_URL e risolve l'hostname via Docker DNS (CLI verificato 200). Evita ricorrenze del drift IP.
$this->qdrantUrl = rtrim($url, '/');
$this->collection = $collection;
}

View File

@ -28,7 +28,7 @@ services:
- ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY}
- VOYAGE_API_KEY=${VOYAGE_API_KEY}
- VOYAGE_MODEL=${VOYAGE_MODEL:-voyage-3-lite}
- QDRANT_URL=http://172.21.0.5:6333
- QDRANT_URL=http://nis2-qdrant:6333
- VAULT_STEWARD_URL=https://vault-steward:8443
- VAULT_APP_TOKEN=${VAULT_APP_TOKEN_NIS2}
- VAULT_PREFIX=tier1__nis2-app__