splitpro/compose.yml
2026-01-25 23:16:56 +01:00

60 lines
1.7 KiB
YAML

services:
splitpro:
image: ossapps/splitpro:v2.0.0-beta.5
environment:
AUTHENTIK_ID: "${AUTHENTIK_ID}"
AUTHENTIK_SECRET: "${AUTHENTIK_SECRET}"
AUTHENTIK_ISSUER: "${AUTHENTIK_ISSUER}"
NEXTAUTH_SECRET: "${NEXTAUTH_SECRET}"
DATABASE_URL: "postgresql://postgres:${POSTGRES_PASSWORD}@splitpro_db"
NEXTAUTH_URL: "https://splitpro.urmel.de"
HOSTNAME: "0.0.0.0" # Fixes implemenntatiion bug where only hostname would be used to accept connections
DEFAULT_HOMEPAGE: "/balances"
ENABLE_SENDING_INVITES: true
DISABLE_EMAIL_SIGNUP: true
FROM_EMAIL: "${FROM_EMAIL}"
EMAIL_SERVER_HOST: mail.postale.io
EMAIL_SERVER_PORT: 465
EMAIL_SERVER_USER: "${FROM_EMAIL}"
EMAIL_SERVER_PASSWORD: "${FROM_EMAIL_PASSWORD}"
R2_URL: "https://s3.urmel.de"
R2_PUBLIC_URL: "https://s3.urmel.de/splitpro"
R2_BUCKET: "splitpro"
R2_SECRET_KEY: "${S3_SECRET}"
R2_ACCESS_KEY: "splitpro"
depends_on:
- splitpro_db
networks:
- db
- proxy
labels:
traefik.enable: true
traefik.http.routers.splitpro.rule: "Host(`splitpro.urmel.de`)"
traefik.http.routers.splitpro.tls: true
traefik.http.routers.splitpro.tls.certResolver: hetzner
traefik.http.services.splitpro-https.loadbalancer.server.port: 3000
splitpro_db:
image: ossapps/postgres:17.7-trixie
environment:
POSTGRES_PASSWORD: "${POSTGRES_PASSWORD}"
volumes:
- data:/var/lib/postgresql/data
networks:
- db
restart: always
command: >
postgres
-c shared_preload_libraries=pg_cron
-c cron.database_name=postgres
-c cron.timezone=UTC
volumes:
data:
networks:
db:
proxy:
name: traefik_exposed
external: true