Documentation

Deployment

Docker Compose, private cloud, and on-premise deployment options.

Docker Compose

Codegraphs runs as a set of 12+ Docker containers orchestrated by Docker Compose. The standard deployment includes all services required for a fully functional platform.

# Development (Linux native)
cd DVN-Infra
scripts/compose-up.sh

# Production
docker compose \
  -f compose/docker-compose.yml \
  -f compose/docker-compose.prod.yml \
  --env-file env/prod.env \
  up -d

Service Architecture

The platform consists of 10 application services plus infrastructure:

ServicePortRole
dvn-nginx:80, :443SSL termination, reverse proxy, static files
dvn-gateway:8088External entry point, JWT validation, routing
dvn-api:8080Search engine (internal only)
dvn-auth:8093JWT/OIDC/OTP authentication
dvn-postgres:5432Auth/Contract database
dvn-redis:6379Session store, rate limiting

Internal services (dvn-api, dvn-admin) are on the dvn-internal Docker network and are not directly accessible from the host. All external traffic must go through dvn-gateway.

GPU Configuration

PDF processing can leverage GPU acceleration via MinerU. GPU support is controlled by the DVN_GPU_HOST environment variable:

# env/dev.env
DVN_GPU_HOST=true   # Enable GPU (MinerU)
DVN_GPU_HOST=false  # CPU-only (tesseract)

Use scripts/compose-up.sh instead of raw docker compose — it reads DVN_GPU_HOST and automatically includes or excludes the GPU Compose file.

On-Premise Deployment

Enterprise customers receive a full Docker Compose-based deployment package. No external network access is required — all services run within the customer's infrastructure. Source code never leaves the network.

  • Requirements: Docker Engine 24+, Docker Compose v2, 8 GB RAM minimum, 20 GB disk
  • Air-gapped: Docker images can be delivered as .tar archives for environments without internet access
  • Custom parsers: Enterprise customers can request custom parser development for proprietary languages or formats

Enterprise onboarding: We provide dedicated support for initial setup, including environment validation, JWT key generation, and tenant configuration. Contact enterprise@codegraphs.com.

Health Checks

# Verify all services
curl http://localhost:8088/api/health   # Gateway
curl http://localhost:8093/api/health   # Auth
curl http://localhost:8094/api/health   # Contract
curl http://localhost:8095/api/health   # Conductor
curl http://localhost:8096/api/health   # Manager
curl http://localhost:8090/api/health   # ReServices
curl http://localhost:8091/api/health   # PdfConvert
curl http://localhost:8092/api/health   # OfficeConvert

All services expose a /api/health endpoint returning HTTP 200 when healthy. Prometheus metrics are available at :9091 and Grafana dashboards at :3000.