booth-musicgpt/docker-compose.yml

51 lines
1.9 KiB
YAML

# 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, MUSICGPT_API_KEY
# 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/downloaded songs persistent
# across container restarts and redeploys.
services:
booth:
build:
context: https://gitlab.hallsworth.ca/yrtria/booth-musicgpt.git#main
container_name: booth-musicgpt
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:-}
- MUSICGPT_API_KEY=${MUSICGPT_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:-0.0.0.0:8500}:${INTERNAL_PORT:-8000}"
volumes:
- booth-musicgpt-data:/app/data
- booth-musicgpt-uploads:/app/uploads
volumes:
booth-musicgpt-data:
booth-musicgpt-uploads: