Infrastructure as Code for ObservecO products
This repository contains all infrastructure definitions for deploying ObservecO products to various platforms.
- ✅ Docker Compose (local development)
- ✅ Kubernetes manifests (production)
- ✅ Terraform modules (AWS, GCP, Azure)
- ✅ CI/CD workflows (GitHub Actions)
- ✅ Helm charts (Kubernetes packaging)
# Clone this repo
git clone https://github.com/observeco/infra.git
cd infra
# Start all services
docker-compose up -d
# Check status
docker-compose ps
# View logs
docker-compose logs -f
# Stop services
docker-compose down# Apply all manifests
kubectl apply -f k8s/
# Check deployment
kubectl get pods -n observeco
# Port forward to dashboard
kubectl port-forward svc/dashboard 3000:3000 -n observecocd terraform/aws
# Initialize
terraform init
# Plan
terraform plan
# Apply
terraform applyinfra/
├── docker-compose/ # Docker Compose files
│ ├── docker-compose.yml
│ └── docker-compose.prod.yml
├── k8s/ # Kubernetes manifests
│ ├── namespace.yaml
│ ├── pulse/
│ ├── context/
│ ├── dashboard/
│ └── ingress/
├── terraform/ # Terraform configurations
│ ├── aws/
│ ├── gcp/
│ └── azure/
├── helm/ # Helm charts
│ ├── pulse/
│ ├── context/
│ └── dashboard/
└── .github/ # GitHub Actions workflows
└── workflows/
| Service | Port | Description |
|---|---|---|
| pulse | N/A | CLI tool (not containerized) |
| context | 8080 | API server |
| context-db | 5432 | PostgreSQL database |
| context-redis | 6379 | Redis cache |
| dashboard | 3000 | Web UI |
Copy .env.example to .env:
cp .env.example .envEdit .env with your configuration:
# Context API
CONTEXT_PORT=8080
DB_HOST=postgres
DB_PORT=5432
DB_NAME=observe_context
DB_USER=postgres
DB_PASSWORD=your_password
# Dashboard
NEXT_PUBLIC_API_URL=http://localhost:8080
# Observability
OTEL_ENABLED=true
OTEL_EXPORTER_OTLP_ENDPOINT=http://jaeger:4317cd terraform/aws
terraform init
terraform applycd terraform/gcp
terraform init
terraform applycd terraform/azure
terraform init
terraform applyAll services include:
- ✅ Health check endpoints
- ✅ Prometheus metrics
- ✅ Structured logging
- ✅ OpenTelemetry tracing
- ✅ Secrets managed via environment variables
- ✅ Network policies (Kubernetes)
- ✅ TLS/SSL enabled
- ✅ RBAC configured
- Fork the repository
- Create a feature branch
- Test infrastructure changes locally
- Open a Pull Request
MIT License
- Documentation: https://docs.observeco.com/infra
- Issues: https://github.com/observeco/infra/issues
ObservecO - Infrastructure that scales.