version: '3.8' # Gondulf Development Configuration - MailHog and Live Reload # Usage: podman-compose -f docker-compose.yml -f docker-compose.development.yml up # Or: docker-compose -f docker-compose.yml -f docker-compose.development.yml up services: gondulf: build: context: . dockerfile: Dockerfile image: gondulf:dev container_name: gondulf_dev # Override with bind mounts for live code reload volumes: - ./data:/data:Z # :Z for SELinux (ignored on non-SELinux systems) - ./src:/app/src:ro # Read-only source code mount for live reload # Development environment settings environment: - GONDULF_DEBUG=true - GONDULF_LOG_LEVEL=DEBUG - GONDULF_SMTP_HOST=mailhog - GONDULF_SMTP_PORT=1025 - GONDULF_SMTP_USE_TLS=false - GONDULF_HTTPS_REDIRECT=false - GONDULF_SECURE_COOKIES=false # Override command for auto-reload command: uvicorn gondulf.main:app --host 0.0.0.0 --port 8000 --reload # MailHog for local email testing mailhog: image: mailhog/mailhog:latest container_name: gondulf_mailhog restart: unless-stopped ports: - "1025:1025" # SMTP port - "8025:8025" # Web UI networks: - gondulf_network healthcheck: test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://localhost:8025"] interval: 10s timeout: 5s retries: 3 start_period: 5s