diff --git a/supabase/code/docker-compose.yml b/supabase/code/docker-compose.yml index c5c3722..0815e9a 100644 --- a/supabase/code/docker-compose.yml +++ b/supabase/code/docker-compose.yml @@ -9,7 +9,8 @@ version: "3.8" services: studio: - image: supabase/studio:20240729-ce42139 + # container_name: supabase-studio + image: supabase/studio:20240923-2e3e90c restart: unless-stopped healthcheck: test: @@ -17,7 +18,7 @@ services: "CMD", "node", "-e", - "require('http').get('http://localhost:3000/api/profile', (r) => {if (r.statusCode !== 200) throw new Error(r.statusCode)})", + "require('http').get('http://localhost:3000/api/profile', (r) => {if (r.statusCode !== 200) throw new Error(r.statusCode)})" ] timeout: 5s interval: 5s @@ -47,10 +48,14 @@ services: # NEXT_ANALYTICS_BACKEND_PROVIDER: bigquery kong: + # container_name: supabase-kong image: kong:2.8.1 restart: unless-stopped # https://unix.stackexchange.com/a/294837 entrypoint: bash -c 'eval "echo \"$$(cat ~/temp.yml)\"" > ~/kong.yml && /docker-entrypoint.sh kong docker-start' + # ports: + # - ${KONG_HTTP_PORT}:8000/tcp + # - ${KONG_HTTPS_PORT}:8443/tcp depends_on: analytics: condition: service_healthy @@ -71,6 +76,7 @@ services: - ./volumes/api/kong.yml:/home/kong/temp.yml:ro auth: + # container_name: supabase-auth image: supabase/gotrue:v2.158.1 depends_on: db: @@ -86,7 +92,7 @@ services: "--no-verbose", "--tries=1", "--spider", - "http://localhost:9999/health", + "http://localhost:9999/health" ] timeout: 5s interval: 5s @@ -128,18 +134,32 @@ services: GOTRUE_EXTERNAL_PHONE_ENABLED: ${ENABLE_PHONE_SIGNUP} GOTRUE_SMS_AUTOCONFIRM: ${ENABLE_PHONE_AUTOCONFIRM} - # Uncomment to enable custom access token hook. You'll need to create a public.custom_access_token_hook function and grant necessary permissions. - # See: https://supabase.com/docs/guides/auth/auth-hooks#hook-custom-access-token for details - # GOTRUE_HOOK_CUSTOM_ACCESS_TOKEN_ENABLED="true" - # GOTRUE_HOOK_CUSTOM_ACCESS_TOKEN_URI="pg-functions://postgres/public/custom_access_token_hook" + # Uncomment to enable custom access token hook. Please see: https://supabase.com/docs/guides/auth/auth-hooks for full list of hooks and additional details about custom_access_token_hook + + # GOTRUE_HOOK_CUSTOM_ACCESS_TOKEN_ENABLED: "true" + # GOTRUE_HOOK_CUSTOM_ACCESS_TOKEN_URI: "pg-functions://postgres/public/custom_access_token_hook" + # GOTRUE_HOOK_CUSTOM_ACCESS_TOKEN_SECRETS: "" + + # GOTRUE_HOOK_MFA_VERIFICATION_ATTEMPT_ENABLED: "true" + # GOTRUE_HOOK_MFA_VERIFICATION_ATTEMPT_URI: "pg-functions://postgres/public/mfa_verification_attempt" + + # GOTRUE_HOOK_PASSWORD_VERIFICATION_ATTEMPT_ENABLED: "true" + # GOTRUE_HOOK_PASSWORD_VERIFICATION_ATTEMPT_URI: "pg-functions://postgres/public/password_verification_attempt" + + # GOTRUE_HOOK_SEND_SMS_ENABLED: "false" + # GOTRUE_HOOK_SEND_SMS_URI: "pg-functions://postgres/public/custom_access_token_hook" + # GOTRUE_HOOK_SEND_SMS_SECRETS: "v1,whsec_VGhpcyBpcyBhbiBleGFtcGxlIG9mIGEgc2hvcnRlciBCYXNlNjQgc3RyaW5n" + + # GOTRUE_HOOK_SEND_EMAIL_ENABLED: "false" + # GOTRUE_HOOK_SEND_EMAIL_URI: "http://host.docker.internal:54321/functions/v1/email_sender" + # GOTRUE_HOOK_SEND_EMAIL_SECRETS: "v1,whsec_VGhpcyBpcyBhbiBleGFtcGxlIG9mIGEgc2hvcnRlciBCYXNlNjQgc3RyaW5n" + + - # GOTRUE_HOOK_MFA_VERIFICATION_ATTEMPT_ENABLED="true" - # GOTRUE_HOOK_MFA_VERIFICATION_ATTEMPT_URI="pg-functions://postgres/public/mfa_verification_attempt" - # GOTRUE_HOOK_PASSWORD_VERIFICATION_ATTEMPT_ENABLED="true" - # GOTRUE_HOOK_PASSWORD_VERIFICATION_ATTEMPT_URI="pg-functions://postgres/public/password_verification_attempt" rest: + # container_name: supabase-rest image: postgrest/postgrest:v12.2.0 depends_on: db: @@ -160,7 +180,8 @@ services: realtime: # This container name looks inconsistent but is correct because realtime constructs tenant id by parsing the subdomain - image: supabase/realtime:v2.30.23 + # container_name: realtime-dev.supabase-realtime + image: supabase/realtime:v2.30.34 depends_on: db: # Disable this if you are using an external Postgres database @@ -178,7 +199,7 @@ services: "/dev/null", "-H", "Authorization: Bearer ${ANON_KEY}", - "http://localhost:4000/api/tenants/realtime-dev/health", + "http://localhost:4000/api/tenants/realtime-dev/health" ] timeout: 5s interval: 5s @@ -191,7 +212,7 @@ services: DB_USER: supabase_admin DB_PASSWORD: ${POSTGRES_PASSWORD} DB_NAME: ${POSTGRES_DB} - DB_AFTER_CONNECT_QUERY: "SET search_path TO _realtime" + DB_AFTER_CONNECT_QUERY: 'SET search_path TO _realtime' DB_ENC_KEY: supabaserealtime API_JWT_SECRET: ${JWT_SECRET} SECRET_KEY_BASE: UpNVntn3cDxHJpq99YMc1T1AQgQpc8kfYTuRgBiYa15BLrx8etQoXz3gZv1/u2oq @@ -203,6 +224,7 @@ services: # To use S3 backed storage: docker compose -f docker-compose.yml -f docker-compose.s3.yml up storage: + # container_name: supabase-storage image: supabase/storage-api:v1.10.1 depends_on: db: @@ -220,7 +242,7 @@ services: "--no-verbose", "--tries=1", "--spider", - "http://localhost:5000/status", + "http://localhost:5000/status" ] timeout: 5s interval: 5s @@ -245,9 +267,10 @@ services: - ./volumes/storage:/var/lib/storage:z imgproxy: + # container_name: supabase-imgproxy image: darthsim/imgproxy:v3.8.0 healthcheck: - test: ["CMD", "imgproxy", "health"] + test: [ "CMD", "imgproxy", "health" ] timeout: 5s interval: 5s retries: 3 @@ -260,6 +283,7 @@ services: - ./volumes/storage:/var/lib/storage:z meta: + # container_name: supabase-meta image: supabase/postgres-meta:v0.83.2 depends_on: db: @@ -277,7 +301,8 @@ services: PG_META_DB_PASSWORD: ${POSTGRES_PASSWORD} functions: - image: supabase/edge-runtime:v1.56.1 + # container_name: supabase-edge-functions + image: supabase/edge-runtime:v1.58.3 restart: unless-stopped depends_on: analytics: @@ -298,9 +323,10 @@ services: - /home/deno/functions/main analytics: + # container_name: supabase-analytics image: supabase/logflare:1.4.0 healthcheck: - test: ["CMD", "curl", "http://localhost:4000/health"] + test: [ "CMD", "curl", "http://localhost:4000/health" ] timeout: 5s interval: 5s retries: 10 @@ -335,9 +361,12 @@ services: # Uncomment to use Big Query backend for analytics # GOOGLE_PROJECT_ID: ${GOOGLE_PROJECT_ID} # GOOGLE_PROJECT_NUMBER: ${GOOGLE_PROJECT_NUMBER} + # ports: + # - 4000:4000 # Comment out everything below this point if you are using an external Postgres database db: + # container_name: supabase-db image: supabase/postgres:15.1.1.78 healthcheck: test: pg_isready -U postgres -h localhost @@ -354,6 +383,9 @@ services: - -c - log_min_messages=fatal # prevents Realtime polling queries from appearing in logs restart: unless-stopped + # ports: + # # Pass down internal port because it's set dynamically by other services + # - ${POSTGRES_PORT}:${POSTGRES_PORT} environment: POSTGRES_HOST: /var/run/postgresql PGPORT: ${POSTGRES_PORT} @@ -380,16 +412,18 @@ services: - db-config:/etc/postgresql-custom vector: + # container_name: supabase-vector image: timberio/vector:0.28.1-alpine healthcheck: test: [ + "CMD", "wget", "--no-verbose", "--tries=1", "--spider", - "http://vector:9001/health", + "http://vector:9001/health" ] timeout: 5s interval: 5s @@ -399,7 +433,7 @@ services: - ${DOCKER_SOCKET_LOCATION}:/var/run/docker.sock:ro environment: LOGFLARE_API_KEY: ${LOGFLARE_API_KEY} - command: ["--config", "etc/vector/vector.yml"] + command: [ "--config", "etc/vector/vector.yml" ] volumes: db-config: