# Copy to .env and fill in. Never commit .env. # Which front door to run: "caddy" (open ports 80/443, automatic HTTPS) or "tunnel" (Cloudflare Tunnel) COMPOSE_PROFILES=caddy # Your domain, without https://. With Caddy, point its DNS A/AAAA record at this machine first. SITE_DOMAIN=clips.example.com # Two long random strings. Make each with: openssl rand -hex 32 POSTGRESQL_PASSWORD= CORE_SECRET= # --- optional --- # Name shown in the tab, the logo and Discord embeds. Its first word is the big word on the login screen. SITE_NAME=kaledonya clips # Shown in the upload dialog and status bar: "Sending to ", "connected ยท " SERVER_NAME=the server # Where the browser sends uploads. Leave unset to use https://SITE_DOMAIN (right for Caddy). # Behind a Cloudflare Tunnel set this to another address, because Cloudflare refuses uploads over 100 MB (see README). #UPLOAD_URL=https://upload.example.com # Shown when an upload can't connect at all, e.g. "Connect to the VPN to upload." #UPLOAD_HINT=Can't reach the upload server. # How long clips live before Zipline deletes them (Zipline duration format: 30d, 90d, ...) #CLIP_LIFETIME=90d # CPU cap for intake (uploads, .mkv remuxing, Discord copies). Lower it if the machine runs hot. #INTAKE_CPUS=4 # How often Zipline makes library thumbnails for new uploads #THUMBNAIL_INTERVAL=5m # Only for COMPOSE_PROFILES=tunnel: the token from Cloudflare Zero Trust -> Networks -> Tunnels #TUNNEL_TOKEN=