services: app_auth_central: build: . container_name: app_auth_central restart: always #ports: # - "8080:8080" environment: - PORT=8080 # Database - External (Dokploy managed) - DB_URL=host=${DB_HOST} user=${DB_USER} password=${DB_PASSWORD} dbname=${DB_NAME} port=${DB_PORT:-5432} sslmode=disable TimeZone=Europe/Istanbul - DB_HOST=${DB_HOST} - DB_PORT=${DB_PORT:-5432} - DB_USER=${DB_USER} - DB_PASSWORD=${DB_PASSWORD} - DB_NAME=${DB_NAME} # Redis - External (Dokploy managed) - REDIS_URL=redis://${REDIS_USER:-default}:${REDIS_PASSWORD}@${REDIS_HOST}:${REDIS_PORT:-6379}/0 - REDIS_HOST=${REDIS_HOST} - REDIS_PORT=${REDIS_PORT:-6379} - REDIS_PASSWORD=${REDIS_PASSWORD} - REDIS_USER=${REDIS_USER:-default} # JWT - JWT_SECRET=${JWT_SECRET} # OAuth - Google - GOOGLE_CLIENT_ID=${GOOGLE_CLIENT_ID} - GOOGLE_CLIENT_SECRET=${GOOGLE_CLIENT_SECRET} # OAuth - GitHub - GITHUB_CLIENT_ID=${GITHUB_CLIENT_ID} - GITHUB_CLIENT_SECRET=${GITHUB_CLIENT_SECRET} # URLs - CLIENT_CALLBACK_URL=${CLIENT_CALLBACK_URL} - APP_URL=${APP_URL:-http://localhost:8080} # Avatar settings - WebP default - AVATAR_H=${AVATAR_H:-150} - AVATAR_W=${AVATAR_W:-150} - AVATAR_Q=${AVATAR_Q:-90} - AVATAR_B=${AVATAR_B:-cover} - AVATAR_F=${AVATAR_F:-webp} # Email settings - EMAIL_HOST=${EMAIL_HOST:-smtp.gmail.com} - EMAIL_PORT=${EMAIL_PORT:-587} - EMAIL_HOST_USER=${EMAIL_HOST_USER} - EMAIL_HOST_PASSWORD=${EMAIL_HOST_PASSWORD} - EMAIL_USE_TLS=${EMAIL_USE_TLS:-true} - EMAIL_USE_SSL=${EMAIL_USE_SSL:-false} - EMAIL_FROM=${EMAIL_FROM:-noreply@gauth.local} volumes: - uploads_data:/app/uploads networks: - dokploy-network healthcheck: test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8080/"] interval: 30s timeout: 10s retries: 3 start_period: 40s volumes: uploads_data: driver: local networks: dokploy-network: external: true