docker-compose.dev.yml
Rama main · réplica de lectura del repositorio original.
# Docker Compose for local development
services:
unraid-config-guardian:
build: .
container_name: unraid-config-guardian
restart: unless-stopped
environment:
# Development settings - use current user's IDs
- PUID=${PUID:-1000} # Use your local user ID
- PGID=${PGID:-1000} # Use your local group ID
- TZ=America/New_York # Adjust to your timezone
# Docker connection (uses socket proxy for security)
- DOCKER_HOST=tcp://docker-socket-proxy:2375
# Backup configuration
- SCHEDULE=0 2 * * 0 # Weekly Sunday at 2 AM
- BACKUP_LOCATION=/output
- MASK_PASSWORDS=true
- INCLUDE_SYSTEM_INFO=true
- DEBUG=true
# Optional: Notification settings
# - WEBHOOK_URL=https://hooks.slack.com/services/your/webhook/url
# - EMAIL_NOTIFICATIONS=admin@yourdomain.com
volumes:
# Local development paths
- ./config:/config
- ./output:/output
# Docker socket proxy connection (requires docker-socket-proxy container)
# For local development - these paths won't exist on non-Unraid systems
# Comment out or adjust as needed
# - /boot:/boot:ro
networks:
- unraid-guardian
# Web interface port
ports:
- "7842:7842"
# Security settings
security_opt:
- no-new-privileges:true
# Resource limits
mem_limit: 1g
cpus: 0.5
# Health check
healthcheck:
test: ["CMD", "python", "src/health_check.py"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
# Docker Socket Proxy for secure Docker access
docker-socket-proxy:
image: tecnativa/docker-socket-proxy:latest
container_name: docker-socket-proxy
restart: unless-stopped
environment:
- CONTAINERS=1 # Allow container inspection
- IMAGES=1 # Allow image inspection
- INFO=1 # Allow system info
- NETWORKS=1 # Allow network inspection
- VOLUMES=1 # Allow volume inspection
- POST=0 # Disable container creation/modification
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
networks:
- unraid-guardian
networks:
unraid-guardian:
driver: bridge