61 lines
1.9 KiB
YAML
61 lines
1.9 KiB
YAML
name: split-pro-prod
|
|
|
|
services:
|
|
postgres:
|
|
image: postgres:16
|
|
container_name: splitpro-db-prod
|
|
restart: always
|
|
environment:
|
|
- POSTGRES_USER=${POSTGRES_USER:?err}
|
|
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD:?err}
|
|
- POSTGRES_DB=${POSTGRES_DB:?err}
|
|
healthcheck:
|
|
test: ['CMD-SHELL', 'pg_isready -U ${POSTGRES_USER}']
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
# ports:
|
|
# - "5432:5432"
|
|
volumes:
|
|
- database:/var/lib/postgresql/data
|
|
|
|
splitpro:
|
|
image: ossapps/splitpro:latest
|
|
container_name: splitpro
|
|
restart: always
|
|
ports:
|
|
- ${PORT:-3000}:${PORT:-3000}
|
|
environment:
|
|
- PORT=${PORT:-3000}
|
|
- DATABASE_URL=${DATABASE_URL:?err}
|
|
- NEXTAUTH_URL=${NEXTAUTH_URL:?err}
|
|
- NEXTAUTH_SECRET=${NEXTAUTH_SECRET:?err}
|
|
- ENABLE_SENDING_INVITES=${ENABLE_SENDING_INVITES:?err}
|
|
- FROM_EMAIL=${FROM_EMAIL}
|
|
- EMAIL_SERVER_HOST=${EMAIL_SERVER_HOST}
|
|
- EMAIL_SERVER_PORT=${EMAIL_SERVER_PORT}
|
|
- EMAIL_SERVER_USER=${EMAIL_SERVER_USER}
|
|
- EMAIL_SERVER_PASSWORD=${EMAIL_SERVER_PASSWORD}
|
|
- GOOGLE_CLIENT_ID=${GOOGLE_CLIENT_ID}
|
|
- GOOGLE_CLIENT_SECRET=${GOOGLE_CLIENT_SECRET}
|
|
- AUTHENTIK_ID=${AUTHENTIK_ID}
|
|
- AUTHENTIK_SECRET=${AUTHENTIK_SECRET}
|
|
- AUTHENTIK_ISSUER=${AUTHENTIK_ISSUER}
|
|
- R2_ACCESS_KEY=${R2_ACCESS_KEY}
|
|
- R2_SECRET_KEY=${R2_SECRET_KEY}
|
|
- R2_BUCKET=${R2_BUCKET}
|
|
- R2_URL=${R2_URL}
|
|
- R2_PUBLIC_URL=${R2_PUBLIC_URL}
|
|
- WEB_PUSH_PRIVATE_KEY=${WEB_PUSH_PRIVATE_KEY}
|
|
- WEB_PUSH_PUBLIC_KEY=${WEB_PUSH_PUBLIC_KEY}
|
|
- WEB_PUSH_EMAIL=${WEB_PUSH_EMAIL}
|
|
- FEEDBACK_EMAIL=${FEEDBACK_EMAIL}
|
|
- DISCORD_WEBHOOK_URL=${DISCORD_WEBHOOK_URL}
|
|
depends_on:
|
|
postgres:
|
|
condition: service_healthy
|
|
|
|
volumes:
|
|
database:
|
|
|