117 lines
4.3 KiB
Plaintext
117 lines
4.3 KiB
Plaintext
############################################################
|
|
# Single source of truth for the whole stack.
|
|
# cp .env.example .env
|
|
#
|
|
# Used by BOTH docker-compose.yml (Supabase backend) and the
|
|
# apps (Payload CMS + Astro).
|
|
#
|
|
# ⚠️ These are INSECURE DEV DEFAULTS. Regenerate every secret
|
|
# before deploying anywhere real. See README "Production".
|
|
############################################################
|
|
|
|
########################
|
|
# Postgres (Supabase DB)
|
|
########################
|
|
POSTGRES_HOST=db
|
|
POSTGRES_DB=postgres
|
|
POSTGRES_PORT=5432
|
|
POSTGRES_PASSWORD=postgres
|
|
|
|
########################
|
|
# JWT / API keys
|
|
# The ANON_KEY and SERVICE_ROLE_KEY below are signed with this
|
|
# exact JWT_SECRET. If you change JWT_SECRET you MUST regenerate
|
|
# both keys (see README) or Auth/Kong will reject them.
|
|
########################
|
|
JWT_SECRET=your-super-secret-jwt-token-with-at-least-32-characters-long
|
|
JWT_EXPIRY=3600
|
|
ANON_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJhbm9uIiwKICAgICJpc3MiOiAic3VwYWJhc2UtZGVtbyIsCiAgICAiaWF0IjogMTY0MTc2OTIwMCwKICAgICJleHAiOiAxNzk5NTM1NjAwCn0.dc_X5iR_VP_qT0zsiyj_I_OZ2T9FtRU2BBNWN8Bu4GE
|
|
SERVICE_ROLE_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q
|
|
|
|
# New-style opaque API keys (optional; leave blank to disable)
|
|
SUPABASE_PUBLISHABLE_KEY=
|
|
SUPABASE_SECRET_KEY=
|
|
ANON_KEY_ASYMMETRIC=
|
|
SERVICE_ROLE_KEY_ASYMMETRIC=
|
|
|
|
########################
|
|
# API gateway (Kong) + public URLs
|
|
########################
|
|
KONG_HTTP_PORT=8000
|
|
KONG_HTTPS_PORT=8443
|
|
SUPABASE_PUBLIC_URL=http://localhost:8000
|
|
API_EXTERNAL_URL=http://localhost:8000/auth/v1
|
|
|
|
########################
|
|
# Studio dashboard
|
|
########################
|
|
DASHBOARD_USERNAME=supabase
|
|
DASHBOARD_PASSWORD=this_password_is_insecure_and_should_be_updated
|
|
STUDIO_DEFAULT_ORGANIZATION=Default Organization
|
|
STUDIO_DEFAULT_PROJECT=cdrdpyj
|
|
PG_META_CRYPTO_KEY=your-encryption-key-32-chars-min
|
|
OPENAI_API_KEY=
|
|
|
|
########################
|
|
# Auth (GoTrue)
|
|
########################
|
|
SITE_URL=https://web.localhost
|
|
ADDITIONAL_REDIRECT_URLS=
|
|
DISABLE_SIGNUP=false
|
|
ENABLE_EMAIL_SIGNUP=true
|
|
ENABLE_EMAIL_AUTOCONFIRM=true
|
|
ENABLE_ANONYMOUS_USERS=false
|
|
ENABLE_PHONE_SIGNUP=false
|
|
ENABLE_PHONE_AUTOCONFIRM=false
|
|
MAILER_URLPATHS_CONFIRMATION="/auth/v1/verify"
|
|
MAILER_URLPATHS_INVITE="/auth/v1/verify"
|
|
MAILER_URLPATHS_RECOVERY="/auth/v1/verify"
|
|
MAILER_URLPATHS_EMAIL_CHANGE="/auth/v1/verify"
|
|
SMTP_ADMIN_EMAIL=admin@example.com
|
|
SMTP_HOST=supabase-mail
|
|
SMTP_PORT=2500
|
|
SMTP_USER=fake_mail_user
|
|
SMTP_PASS=fake_mail_password
|
|
SMTP_SENDER_NAME=fake_sender
|
|
|
|
########################
|
|
# REST (PostgREST)
|
|
########################
|
|
PGRST_DB_SCHEMAS=public,graphql_public
|
|
PGRST_DB_MAX_ROWS=1000
|
|
PGRST_DB_EXTRA_SEARCH_PATH=public
|
|
|
|
########################
|
|
# Storage + imgproxy
|
|
########################
|
|
GLOBAL_S3_BUCKET=stub
|
|
REGION=stub
|
|
STORAGE_TENANT_ID=stub
|
|
S3_PROTOCOL_ACCESS_KEY_ID=625729a08b95bf1b7ff351a663f3a23c
|
|
S3_PROTOCOL_ACCESS_KEY_SECRET=850181e4652dd023b7a98c58ae0d2d34bd487ee0cc3254aed6eda37307425907
|
|
IMGPROXY_AUTO_WEBP=true
|
|
|
|
############################################################
|
|
# Applications
|
|
############################################################
|
|
|
|
########################
|
|
# Payload CMS (apps/cms)
|
|
# Runs on plain http://localhost:3000 in host dev so Astro's
|
|
# server-side fetch stays plain HTTP (portless HTTPS certs are
|
|
# not trusted by Node). DATABASE_URI connects via the published
|
|
# Postgres port; the compose `apps` profile overrides host->db.
|
|
########################
|
|
DATABASE_URI=postgresql://postgres:postgres@localhost:5432/postgres
|
|
PAYLOAD_SECRET=dev-only-change-me-6f1c2b8a9e4d
|
|
PAYLOAD_PUBLIC_SERVER_URL=http://localhost:3000
|
|
|
|
########################
|
|
# Astro (apps/web) — runs behind portless at https://web.localhost
|
|
# Where the frontend reads content from Payload's REST API.
|
|
# Vars prefixed PUBLIC_ are exposed to the browser by Astro.
|
|
########################
|
|
PUBLIC_PAYLOAD_API_URL=http://localhost:3000/api
|
|
PUBLIC_SUPABASE_URL=http://localhost:8000
|
|
PUBLIC_SUPABASE_ANON_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJhbm9uIiwKICAgICJpc3MiOiAic3VwYWJhc2UtZGVtbyIsCiAgICAiaWF0IjogMTY0MTc2OTIwMCwKICAgICJleHAiOiAxNzk5NTM1NjAwCn0.dc_X5iR_VP_qT0zsiyj_I_OZ2T9FtRU2BBNWN8Bu4GE
|