Self-Hosted Deployment Guide
Operate Relay Protocol entirely within your infrastructure using the guidance below.
Components to Provision
| Component | Recommendation |
|---|---|
| Application API | Kubernetes (Helm chart) or Docker Compose |
| Postgres | Self-hosted Postgres 14+ with logical replication |
| Redis | Redis 6+ with persistence and monitoring |
| Object Storage (optional) | S3-compatible bucket for artefacts/logs |
| Observability | Prometheus + Grafana, or Datadog/Splunk |
Deployment Paths
- Docker Compose – Quick start for evaluation.
docker compose -f docker/docker-compose.yml up --build - Kubernetes (Helm) – Production-grade deployment with overrides.
helm upgrade --install relay ./helm/relay-protocol \
--values helm/relay-protocol/values.yaml \
--values helm/relay-protocol/values.selfhosted.yaml - CI/CD – Use
.github/workflows/deploy.ymlas a reference for your own pipeline (build → test → deploy).
Configuration Checklist
- Populate
.envwith self-hosted secrets (database credentials, Redis URL, JWT signing key). - Set
DEPLOYMENT_MODE=selfhosted. - Enable production logs (
JSON_LOGS=true) and configure log shipping. - Update observability exporters to your preferred stack.
Hardening Tips
- Run the quality gates (
python3 dev_process/validation/quality_gate_runner.py) in CI. - Configure alerts using the runbooks under
docs/monitoring/runbooks/. - Schedule the performance benchmark workflow to detect regressions.
- Rerun the zero-trust audit periodically and track history.