Repository navigation
ClusterGate v1.12.3
ClusterGate v1.12.3
Kubernetes Routing Gateway Platform — expose internal Kubernetes services over public domains.
Upgrade notes
- Database migration:
20261005090000_request_log_sourceadds asourcecolumn (TRAFFIC/TEST/HEALTH_CHECK) and an index torequest_logs, and backfills existing rows. The backend applies it automatically on startup (prisma migrate deploy). On very largerequest_logstables the backfillUPDATEcan take a moment. - Request log defaults changed: route test-panel runs and health-check probes (detected by user agent, e.g.
kube-probe, Uptime Kuma, UptimeRobot, ELB, GoogleHC) are now hidden from the request log by default. Use the new source filter on the Activity page, the "Show tests & health checks" switch on a route's log tab, or?source=allon/api/logsto see them.
New
- Streamed responses are visible in the request log. Instead of
[streamed], the log keeps the first 5000 characters of the streamed body (marked when truncated), decompressed and with the usual PII redaction. SSE / NDJSON bodies show the assembled text with a Raw toggle. The proxied stream itself is unchanged.
What's Changed
- chore(release): v1.12.3 (@claude)
- feat(logs): mark test runs and health checks, hide them by default (@claude)
- fix(logs): add LogBody component (logs/ is gitignored, move to common/) (@claude)
- feat(logs): capture streamed response bodies for the request log (@claude)
Docker Images
# Backend
docker pull ghcr.io/No749ah/clustergate-backend:v1.12.3
# Frontend
docker pull ghcr.io/No749ah/clustergate-frontend:v1.12.3Quick Start
git clone https://github.com/No749ah/ClusterGate.git
cd ClusterGate
cp .env.example .env
# Edit .env — set JWT_SECRET and POSTGRES_PASSWORD
docker compose up -d
docker compose exec backend npm run db:migrateFrontend: http://localhost:3000
Backend API: http://localhost:3001
On first visit, the Setup Wizard will guide you through creating your admin account.
Kubernetes Deploy
helm upgrade --install clustergate ./helm/clustergate \
--namespace clustergate \
--create-namespace \
--set ingress.host=clustergate.example.com \
--set backend.secrets.jwtSecret=$(openssl rand -base64 64) \
--set postgres.credentials.password=$(openssl rand -base64 32) \
--wait