services: splitpro: image: "ossapps/splitpro:{{ splitpro.version }}" environment: AUTHENTIK_ID: "{{ splitpro.oidc.client_id }}" AUTHENTIK_SECRET: "{{ splitpro.oidc.client_secret }}" AUTHENTIK_ISSUER: "{{ splitpro.oidc.issuer }}" NEXTAUTH_SECRET: "{{ splitpro.nextauth_secret }}" DATABASE_URL: "postgresql://postgres:{{ splitpro.db_password }}@splitpro_db" NEXTAUTH_URL: "https://{{ splitpro.url }}" 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: "{{ splitpro.mail.address }}" EMAIL_SERVER_HOST: "{{ splitpro.mail.host }}" EMAIL_SERVER_PORT: 465 EMAIL_SERVER_USER: "{{ splitpro.mail.address }}" EMAIL_SERVER_PASSWORD: "{{ splitpro.mail.password }}" networks: - db - proxy depends_on: - splitpro_db volumes: - ./data/splitpro-uploads:/app/uploads labels: traefik.enable: true traefik.http.routers.splitpro.rule: "Host(`{{ splitpro.url }}`)" 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:{{ splitpro.db_version }}" environment: POSTGRES_PASSWORD: "{{ splitpro.db_password }}" volumes: - ./data/db:/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 networks: db: {} proxy: name: traefik_exposed external: true