QueryGlow

Deployment Guides

QueryGlow is container-ready with file-based persistence. The deploy.sh script auto-detects your server setup and configures everything for you.

Minimum Requirements

  • RAM: 512MB minimum (1GB recommended)
  • OS: Ubuntu 20.04+, Debian 11+, or similar Linux
  • Ports: 80 and 443 open for SSL certificate generation
  • Domain: DNS A record pointing to your server IP

🔥 Firewall Setup

Open the required ports before running deploy.sh:

sudo ufw allow 22/tcp   # SSH (don't lock yourself out!)
sudo ufw allow 80/tcp   # HTTP (Let's Encrypt verification)
sudo ufw allow 443/tcp  # HTTPS (QueryGlow)
sudo ufw enable

⚠️ Never open database ports (5432, 3306) to the internet. QueryGlow connects to databases internally.

Auto-Detected Deployment Modes

The deploy script automatically detects your server setup:

  • Standalone Mode: Fresh server with no existing nginx → Docker handles nginx + SSL + app
  • Integration Mode: Server already running nginx → Integrates with your existing nginx + system certbot

What the deploy script configures automatically:

  • HTTPS with Let's Encrypt
  • Nginx reverse proxy
  • Basic Auth (bcrypt hashed)
  • Safe Mode enabled by default
  • AES-256-GCM credential encryption
  • Search engine blocking
  • Security headers (HSTS, X-Frame-Options)
  • Auto port detection (3000, 3001, etc.)