# documentation: https://gotify.net/docs/install
# slogan: Gotify is an open-source self-hosted notification server.
# category: messaging
# tags: productivity,notification,collaboration
# logo: svgs/gotify.png
# port: 80

services:
  gotify:
    image: gotify/server:2.7.3
    environment:
      - SERVICE_URL_GOTIFY_80
      - GOTIFY_DEFAULTUSER_NAME=${GOTIFY_USERNAME:-admin}
      - GOTIFY_DEFAULTUSER_PASS=${SERVICE_PASSWORD_GOTIFY}
      - GOTIFY_DATABASE_DIALECT=${GOTIFY_DATABASE_DIALECT:-sqlite3}
      - GOTIFY_DATABASE_CONNECTION=${GOTIFY_DATABASE_CONNECTION:-data/gotify.db}
      - GOTIFY_PASSSTRENGTH=${GOTIFY_PASSSTRENGTH:-10}
      - GOTIFY_UPLOADEDIMAGESDIR=${GOTIFY_UPLOADEDIMAGESDIR:-data/images}
      - GOTIFY_PLUGINSDIR=${GOTIFY_PLUGINSDIR:-data/plugins}
      - GOTIFY_SERVER_PORT=${GOTIFY_SERVER_PORT:-80}
      - GOTIFY_REGISTRATION=${GOTIFY_REGISTRATION:-false}
    volumes:
      - 'gotify-data:/app/data'
    healthcheck:
      test: ["CMD", "curl", "-f", "http://127.0.0.1:80/health"]
      interval: 5s
      timeout: 20s
      retries: 10
    
