Skip to main content
This guide covers how to configure external access for your Bytebase deployment across different deployment methods.
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, ensure proxy_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):
To use this Caddy configuration:
  1. Install Caddy on your VM
  2. Save the configuration to /etc/caddy/Caddyfile
  3. 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)