99 lines
1.9 KiB
YAML
99 lines
1.9 KiB
YAML
_format_version: '1.1'
|
|
|
|
consumers:
|
|
- username: anon
|
|
keyauth_credentials:
|
|
- key: ${SUPABASE_ANON_KEY}
|
|
- username: service_role
|
|
keyauth_credentials:
|
|
- key: ${SUPABASE_SERVICE_KEY}
|
|
|
|
acls:
|
|
- consumer: anon
|
|
group: anon
|
|
- consumer: service_role
|
|
group: admin
|
|
|
|
services:
|
|
# Auth
|
|
- name: auth-v1
|
|
url: http://supabase-auth:9999/
|
|
routes:
|
|
- name: auth-v1-routes
|
|
strip_path: true
|
|
paths:
|
|
- /auth/v1/
|
|
plugins:
|
|
- name: cors
|
|
|
|
# REST (PostgREST)
|
|
- name: rest-v1
|
|
url: http://supabase-rest:3000/
|
|
routes:
|
|
- name: rest-v1-routes
|
|
strip_path: true
|
|
paths:
|
|
- /rest/v1/
|
|
plugins:
|
|
- name: cors
|
|
- name: key-auth
|
|
config:
|
|
hide_credentials: false
|
|
- name: acl
|
|
config:
|
|
hide_groups_header: true
|
|
allow:
|
|
- anon
|
|
- admin
|
|
|
|
# Realtime
|
|
- name: realtime-v1
|
|
url: http://supabase-realtime:4000/socket/
|
|
routes:
|
|
- name: realtime-v1-routes
|
|
strip_path: true
|
|
paths:
|
|
- /realtime/v1/
|
|
plugins:
|
|
- name: cors
|
|
|
|
# Storage
|
|
- name: storage-v1
|
|
url: http://supabase-storage:5000/
|
|
routes:
|
|
- name: storage-v1-routes
|
|
strip_path: true
|
|
paths:
|
|
- /storage/v1/
|
|
plugins:
|
|
- name: cors
|
|
|
|
# pg_meta
|
|
- name: meta
|
|
url: http://supabase-meta:8080/
|
|
routes:
|
|
- name: meta-routes
|
|
strip_path: true
|
|
paths:
|
|
- /pg/
|
|
plugins:
|
|
- name: key-auth
|
|
config:
|
|
hide_credentials: false
|
|
- name: acl
|
|
config:
|
|
hide_groups_header: true
|
|
allow:
|
|
- admin
|
|
|
|
# Next.js App (catch-all — must be last so API routes take priority)
|
|
- name: app
|
|
url: http://app:3000/
|
|
routes:
|
|
- name: app-routes
|
|
strip_path: false
|
|
paths:
|
|
- /
|
|
plugins:
|
|
- name: cors
|