# Nanga Kathai overrides, layered after docker-compose.yml (COMPOSE_FILE in .env). # Copied into the Supabase project folder by install.sh. # Default: the server's own web server (nginx / HestiaCP) does HTTPS and proxies # https:// to 127.0.0.1:${API_GW_HTTP_PORT}. For a server with nothing on # ports 80/443, install.sh also layers docker-compose.nk-caddy.yml instead. services: # The API gateway, reachable from this server only (the reverse proxy forwards to it). api-gw: ports: !override - 127.0.0.1:${API_GW_HTTP_PORT:-18000}:8000/tcp # Serves the email templates inside the Docker network only. nk-mail-templates: image: nginx:1.27-alpine restart: unless-stopped volumes: - ./nk/email-templates:/usr/share/nginx/html:ro # NK Admin website (static files). The server's web server proxies # https://admin. to 127.0.0.1:${NK_ADMIN_PORT}. It talks to the API above; # only admin accounts can change anything (enforced by the database). nk-admin: image: nginx:1.27-alpine restart: unless-stopped ports: - 127.0.0.1:${NK_ADMIN_PORT:-18080}:80 volumes: - ./nk/admin:/usr/share/nginx/html:ro - ./nk/nginx/admin.conf:/etc/nginx/conf.d/default.conf:ro # Send a 6-digit code (not a link) for passwordless email sign-in. auth: depends_on: nk-mail-templates: condition: service_started environment: GOTRUE_MAILER_TEMPLATES_MAGIC_LINK: http://nk-mail-templates/magic_link.html GOTRUE_MAILER_TEMPLATES_CONFIRMATION: http://nk-mail-templates/confirmation.html GOTRUE_MAILER_SUBJECTS_MAGIC_LINK: "Your Nanga Kathai sign-in code" GOTRUE_MAILER_TEMPLATES_RECOVERY: http://nk-mail-templates/recovery.html GOTRUE_MAILER_SUBJECTS_CONFIRMATION: "Confirm your Nanga Kathai account" GOTRUE_MAILER_SUBJECTS_RECOVERY: "Reset your Nanga Kathai password" GOTRUE_PASSWORD_MIN_LENGTH: "8" # Postgres is reachable from the server itself only, never from the internet. supavisor: ports: !override - 127.0.0.1:${NK_DB_PORT:-15432}:5432 - 127.0.0.1:${NK_POOLER_PORT:-16543}:6543