Files
nfoguard/docker-compose.yml
T
2025-09-09 08:50:21 -04:00

77 lines
2.3 KiB
YAML

version: '3.8'
services:
nfoguard:
build: .
container_name: nfoguard
ports:
- "${PORT:-8080}:8080"
volumes:
# Mount your media directories (adjust these paths to match your setup)
- "${HOST_MEDIA_PATH:-/mnt/unionfs/Media}:/media:rw"
# NFOGuard data directory for database and logs
- "./data:/app/data"
# Optional: Mount config if you want to override
# - "./config:/app/config"
environment:
# Media paths inside container - customize these in your .env file
- TV_PATHS=${TV_PATHS:-/media/tv,/media/tv6}
- MOVIE_PATHS=${MOVIE_PATHS:-/media/movies,/media/movies6}
# Database
- DB_PATH=${DB_PATH:-/app/data/media_dates.db}
# Radarr Database (REQUIRED for database-only mode)
- RADARR_DB_HOST=${RADARR_DB_HOST}
- RADARR_DB_PORT=${RADARR_DB_PORT:-5432}
- RADARR_DB_NAME=${RADARR_DB_NAME:-radarr}
- RADARR_DB_USER=${RADARR_DB_USER}
- RADARR_DB_PASSWORD=${RADARR_DB_PASSWORD}
# Optional Radarr API (fallback only)
- RADARR_URL=${RADARR_URL:-}
- RADARR_API_KEY=${RADARR_API_KEY:-}
# Optional Sonarr API (for TV processing)
- SONARR_URL=${SONARR_URL:-}
- SONARR_API_KEY=${SONARR_API_KEY:-}
# NFO Management
- MANAGE_NFO=${MANAGE_NFO:-true}
- FIX_DIR_MTIMES=${FIX_DIR_MTIMES:-true}
- LOCK_METADATA=${LOCK_METADATA:-true}
- MANAGER_BRAND=${MANAGER_BRAND:-NFOGuard}
# Processing settings
- BATCH_DELAY=${BATCH_DELAY:-5.0}
- MAX_CONCURRENT_SERIES=${MAX_CONCURRENT_SERIES:-3}
- MOVIE_PRIORITY=${MOVIE_PRIORITY:-import_then_digital}
- MOVIE_POLL_MODE=${MOVIE_POLL_MODE:-always}
- MOVIE_DATE_UPDATE_MODE=${MOVIE_DATE_UPDATE_MODE:-backfill_only}
# Logging
- DEBUG=${DEBUG:-false}
# Server
- PORT=${PORT:-8080}
# Optional: Connect to Radarr's database network
# networks:
# - radarr_network
restart: unless-stopped
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
# Optional: If you need to connect to Radarr's database network
# networks:
# radarr_network:
# external: true