Infrastructure and deployment configurations for CodeGraph/USA.
This repository contains:
- Docker Compose configuration for local development
- Kubernetes manifests for cloud deployment
- Terraform modules for infrastructure provisioning
- Ansible playbooks for configuration management
- Monitoring and observability setup
- Docker & Docker Compose
- Kubernetes (kubectl, kustomize)
- Terraform 1.3+
- Ansible 2.9+
- Make
# Start all services
make up
# View logs
make logs
# Stop services
make down# Deploy to development
make deploy-dev
# Deploy to staging
make deploy-staging
# Deploy to production (requires confirmation)
make deploy-prod┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ Ingress │────▶│ API │────▶│ Core │
└─────────────┘ └─────────────┘ └─────────────┘
│ │
▼ ▼
┌─────────────┐ ┌─────────────┐
│ Analysis │ │ Memgraph │
└─────────────┘ └─────────────┘
│ │
▼ ▼
┌─────────────┐ ┌─────────────┐
│ Qdrant │ │ Storage │
└─────────────┘ └─────────────┘
- Memgraph: Graph database for code relationships
- Qdrant: Vector database for semantic search
- MinIO: S3-compatible object storage
- Redis: Caching and session storage
- RabbitMQ: Message queue for async processing
- Prometheus: Metrics collection
- Grafana: Metrics visualization
- Jaeger: Distributed tracing
Access monitoring dashboards:
- Grafana: http://localhost:3001 (admin/admin)
- Prometheus: http://localhost:9090
- Jaeger: http://localhost:16686
- All secrets are managed via Kubernetes secrets
- TLS encryption for all external endpoints
- Network policies restrict inter-service communication
- Regular security scanning of container images
# Backup development environment
make backup-dev
# Restore from backup
make restore-dev- Test changes locally using docker-compose
- Validate Kubernetes manifests:
make test-k8s - Run Terraform plan before applying changes
- Document any new services or configurations
Apache License 2.0