Setting up the platform for the first time — env vars and secrets

Updated Jun 29, 2026 · 1 min read

First-time setup guide for engineers deploying YT Transcriber: environment variables, secrets, and getting Docker running.

Clone the repository and copy the env file

Clone the repository to your server. In the project root, copy the example environment file:

cp .env.example .env

Open .env in your editor. You will fill in each variable in the following steps.

Add Clerk authentication keys

Sign in to your Clerk dashboard at dashboard.clerk.com. Create a new application or open an existing one. Copy the following values into your .env file:

  • NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY — found on the API Keys page
  • CLERK_SECRET_KEY — also on the API Keys page (treat this as a password, never commit it)
  • NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in
  • NEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up

Add Supabase credentials

Sign in to your Supabase project at app.supabase.com. Go to Settings > API. Copy these values into your .env:

  • NEXT_PUBLIC_SUPABASE_URL — the project URL (e.g. https://abc123.supabase.co)
  • NEXT_PUBLIC_SUPABASE_ANON_KEY — the anon/public key
  • SUPABASE_SERVICE_ROLE_KEY — the service_role key (server-side only, never expose to the browser)

Add the Redis URL

If you are running Redis locally via Docker (the default), set: REDIS_URL=redis://redis-master:6379

If using an external Redis provider such as Redis Cloud or Upstash, paste the full connection URL provided by your Redis provider, including the password (e.g. redis://:password@host:6379).

Start the stack with Docker Compose

Run the following command in the project root: docker compose up -d

This will pull all required images and start the Nginx, App, Redis, and Sentinel containers. The first startup may take a few minutes. Once complete, visit http://localhost on port 80 to confirm the app is running. Check the Admin > Containers panel to verify all containers show as Healthy.

Was this helpful?