version: '3.8' services: web: build: . ports: - "3003:3003" env_file: - .env environment: - POSTGRES_USER=${POSTGRES_USER:-vortexi} - POSTGRES_PASSWORD=${POSTGRES_PASSWORD:-} - POSTGRES_DB=${POSTGRES_DB:-vortexidb} - POSTGRES_HOST=db - POSTGRES_PORT=5432 - REDIS_HOST=redis - REDIS_PORT=6379 - USE_LOCAL_STORAGE=True - BASE_DOMAIN=${BASE_DOMAIN:-localhost} - RCC_ACCESS_KEY=${RCC_ACCESS_KEY:-} volumes: - ./download_cache:/app/download_cache - ./logs:/app/logs - ./app/files:/app/app/files depends_on: db: condition: service_healthy redis: condition: service_healthy restart: unless-stopped db: image: postgres:16-alpine environment: - POSTGRES_USER=${POSTGRES_USER:-vortexi} - POSTGRES_PASSWORD=${POSTGRES_PASSWORD:-} - POSTGRES_DB=${POSTGRES_DB:-vortexidb} volumes: - postgres_data:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-vortexi} -d ${POSTGRES_DB:-vortexidb}"] interval: 5s timeout: 5s retries: 5 restart: unless-stopped redis: image: redis:7-alpine volumes: - redis_data:/data healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 5s timeout: 5s retries: 5 restart: unless-stopped volumes: postgres_data: redis_data: