Under Workflow permissions, select Read and write permissions
If the options are grayed out or disabled in your repository, you must change them at the organization level first. You need to be an Organization Owner to do this.
Navigate to your GitHub Organization's main page
Click Settings (top navigation bar)
In the left sidebar, under Code, planning, and automation, click Actions → General
GHCR_USERNAME must match the account that generated GHCR_TOKEN. In organization repositories, this is often your user (or bot) account, not the organization name.
If your app and Postgres run in Docker Compose, set DB_HOST to the Postgres service name (usually postgres), not localhost.
Inside containers, localhost points to the same container and causes Prisma P1001 errors.
For internal Docker network connections without Postgres TLS enabled, use DB_SSLMODE=disable.
Create your ENV_KEYS secret with all the environment variables your application needs. Example structure:
NEXT_PUBLIC_BASE_HOST=https://yourdomain.comNEXT_PUBLIC_BRAND_NAME=GoLiveKit# DB connectionDB_USER=db_userDB_PASS=db_passDB_HOST=postgresDB_PORT=5432DB_NAME=db_nameDB_SSLMODE=disable# Auth providersBETTER_AUTH_SECRET="auth_secret"BETTER_AUTH_URL=https://yourdomain.comGOOGLE_CLIENT_ID=google_client_idGOOGLE_CLIENT_SECRET=google_client_secret# Admin userADMIN_EMAIL=admin_email_addressADMIN_PASSWORD=password_minimum_8_symbolsADMIN_NAME=admin_name# Email SMTP config[email protected]EMAIL_SERVER_PASSWORD=your_email_passwordEMAIL_SERVER_HOST=smtp.gmail.comEMAIL_SERVER_PORT=465EMAIL_FROM=Your Name from GoLiveKit<[email protected]># Payments## StripeSTRIPE_SECRET_KEY=sk_test_your_stripe_secret_keySTRIPE_PUBLISHABLE_KEY=pk_test_your_stripe_publishable_key# NotificationsNOTIFICATION_PROVIDER=telegramTELEGRAM_CHANNEL_ID=your_telegram_channel_idTELEGRAM_BOT_TOKEN=your_telegram_bot_token