# Gebos — vendored Supabase compose stack. # # TODO: copy the full official compose from # https://github.com/supabase/supabase/blob/master/docker/docker-compose.yml # and apply the three modifications described in ./README.md: # - drop the `db` service # - replace `db:5432` / `postgres:5432` with ${POSTGRES_HOST}:${POSTGRES_PORT} # - bind Studio to ${STUDIO_BIND}:3000 (default 127.0.0.1) # # The skeleton below names the services we'll keep and the env vars each one # reads, so reviewers can sanity-check the topology before the real compose # lands. services: kong: image: kong:2.8.1 restart: unless-stopped ports: - "127.0.0.1:8000:8000/tcp" # Caddy proxies api.gebos.online here environment: KONG_DATABASE: "off" KONG_DECLARATIVE_CONFIG: /home/kong/kong.yml volumes: - ./kong.yml:/home/kong/kong.yml:ro auth: image: supabase/gotrue:v2.158.1 restart: unless-stopped environment: GOTRUE_DB_DRIVER: postgres GOTRUE_DB_DATABASE_URL: postgres://supabase_auth_admin:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB} GOTRUE_SITE_URL: https://app.gebos.online GOTRUE_JWT_SECRET: ${JWT_SECRET} GOTRUE_JWT_EXP: "3600" API_EXTERNAL_URL: https://api.gebos.online rest: image: postgrest/postgrest:v12.0.2 restart: unless-stopped environment: PGRST_DB_URI: postgres://authenticator:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB} PGRST_DB_SCHEMAS: public PGRST_JWT_SECRET: ${JWT_SECRET} PGRST_DB_ANON_ROLE: anon studio: image: supabase/studio:20240326-5e5586d restart: unless-stopped ports: - "${STUDIO_BIND}:3000:3000/tcp" # never bind to 0.0.0.0 environment: STUDIO_PG_META_URL: http://meta:8080 POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} DEFAULT_ORGANIZATION_NAME: Gebos SUPABASE_URL: https://api.gebos.online DASHBOARD_USERNAME: gebos DASHBOARD_PASSWORD: ${DASHBOARD_PASSWORD} meta: image: supabase/postgres-meta:v0.83.2 restart: unless-stopped environment: PG_META_DB_HOST: ${POSTGRES_HOST} PG_META_DB_PORT: ${POSTGRES_PORT} PG_META_DB_NAME: ${POSTGRES_DB} PG_META_DB_USER: supabase_admin PG_META_DB_PASSWORD: ${POSTGRES_PASSWORD}