# docker-compose.yml # ================== # # Portainer stack definition. # Builds the image directly from the Gitea repository (main branch). # # Environment variables are set in Portainer under the stack's # Environment variables section. The container uses them directly, # so no .env file is required on disk. # # Required: APP_SECRET_KEY, ADMIN_PASSWORD, SMTP_PASS, PUBLIC_BASE_URL # Optional: BOOTH_NAME, HOST_PORT, INTERNAL_PORT, PRICE_PER_VERSION, # CURRENCY, MAX_REVISIONS, HERMES_API_KEY, DATABASE, UPLOAD_FOLDER, # SMTP_HOST, SMTP_PORT, SMTP_USER, SMTP_FROM # # Named volumes keep the SQLite database and uploaded MP3s persistent # across container restarts and redeploys. services: booth: build: context: https://gitlab.hallsworth.ca/yrtria/theme-song-booth.git#main container_name: theme-song-booth restart: unless-stopped environment: - APP_SECRET_KEY=${APP_SECRET_KEY} - ADMIN_PASSWORD=${ADMIN_PASSWORD} - SMTP_HOST=${SMTP_HOST:-mailroot8.namespro.ca} - SMTP_PORT=${SMTP_PORT:-465} - SMTP_USER=${SMTP_USER:-ai@hallsworth.ca} - SMTP_PASS=${SMTP_PASS} - SMTP_FROM=${SMTP_FROM:-ai@hallsworth.ca} - PUBLIC_BASE_URL=${PUBLIC_BASE_URL} - BOOTH_NAME=${BOOTH_NAME:-Trollgorithm Theme Songs} - INTERNAL_PORT=${INTERNAL_PORT:-8000} - MAX_REVISIONS=${MAX_REVISIONS:-2} - HERMES_API_KEY=${HERMES_API_KEY:-} - PRICE_PER_VERSION=${PRICE_PER_VERSION:-10.00} - CURRENCY=${CURRENCY:-CAD} - DATABASE=${DATABASE:-/app/data/booth.db} - UPLOAD_FOLDER=${UPLOAD_FOLDER:-/app/uploads} ports: - "${HOST_PORT:-127.0.0.1:8000}:${INTERNAL_PORT:-8000}" volumes: - booth-data:/app/data - booth-uploads:/app/uploads volumes: booth-data: booth-uploads: