Environment contract
Configure Tube.
Set runtime values in Coolify or the Docker environment. Use the complete template delivered with the release; this page identifies the main trust boundaries.
| Variable | Purpose |
|---|---|
| PORNOGRAPHER_IO_LICENSE_KEY | Your TUBE-SOURCE-XXXXX-XXXXX-XXXXX-XXXXX annual license key. |
| PORNOGRAPHER_IO_LICENSE_SERVER_URL | License authority origin, currently https://pornographer.io. |
| LICENSE_KEY | Neutral compatibility alias for PORNOGRAPHER_IO_LICENSE_KEY. |
| LICENSE_SERVER_URL | Neutral compatibility alias for PORNOGRAPHER_IO_LICENSE_SERVER_URL. |
| SITE_URL | Canonical public origin reported by the server. |
| NEXT_PUBLIC_SITE_URL | Matching public origin used by the browser application. |
| NEXT_PUBLIC_SUPABASE_URL | Supabase project URL. |
| NEXT_PUBLIC_SUPABASE_ANON_KEY | Public Supabase key used by browser sessions. |
| SUPABASE_SERVICE_ROLE_KEY | Server-only Supabase service key. Never expose it to the browser. |
| STORAGE_DRIVER | Media storage mode selected by the delivered deployment template. |
| APP_VERSION | Set by the application image; do not override it manually. |
License verification
Tube checks its signed entitlement against Pornographer.io at boot and on the scheduled heartbeat. Set both branded variables and their neutral aliases to identical values so current Tube releases remain compatible. Cached signed responses cover only the configured fallback window; an expired annual entitlement becomes inactive until renewed.