Bytebase service itself does not provide native HTTPS support. We recommend using a reverse proxy (Nginx, Caddy) on the same VM for Docker deployments, or ingress/gateway for Kubernetes deployments.
Docker Deployment with Reverse Proxy
When deploying Bytebase with Docker on a VM, use a reverse proxy for external access and HTTPS termination.Nginx Configuration
For Docker deployments using Nginx as a reverse proxy:Common Issue: 502 Bad Gateway
If you’re getting 502 errors, ensureproxy_pass points to the actual Bytebase service, not the nginx domain itself (which creates a loop):
Caddy Configuration
For Docker deployments using Caddy (automatic HTTPS with Let’s Encrypt):- Install Caddy on your VM
- Save the configuration to
/etc/caddy/Caddyfile - Run:
caddy reload
Kubernetes Deployment
For Kubernetes deployments, use ingress controllers or gateways to configure external access with HTTPS support.Nginx Ingress Controller
Deploy Bytebase with Nginx Ingress Controller:Kubernetes Gateway API
For modern Kubernetes deployments using Gateway API:Service Configuration
Ensure your Bytebase service is configured correctly:Additional Configuration
Configure External URL
For production usage, configure the External URL to match your domain. See Configure External URL for details.WebSocket Support
SQL Editor autocomplete requires WebSocket support. All configurations above include the necessary WebSocket settings. Key endpoints that require WebSocket:/v1:adminExecute- For SQL execution/lsp- For Language Server Protocol (autocomplete)
Troubleshooting
- WebSocket issues: Verify proxy/ingress WebSocket configuration
- 502 errors: Check Bytebase service status
- Timeout errors: Increase proxy timeout settings (see examples above)

