services: redis: image: redis:alpine restart: unless-stopped volumes: - redis-data:/data ports: - "6379:6379" healthcheck: test: [ "CMD", "redis-cli", "ping" ] interval: 5s timeout: 3s retries: 5 playwright-service: image: mcr.microsoft.com/playwright:v1.56.0-jammy restart: unless-stopped command: npx -y playwright@1.56.0 run-server --port 3000 --path /ws ports: - "3000:3000" session-keeper: build: ./phpsessid-bot env_file: .env restart: unless-stopped depends_on: redis: condition: service_healthy healthcheck: test: [ "CMD-SHELL", "redis-cli -h redis EXISTS EDU_PHPSESSID | grep -q 1" ] interval: 30s timeout: 5s retries: 10 start_period: 60s webinar-checker: build: ./webinar-checker env_file: .env restart: unless-stopped depends_on: redis: condition: service_healthy session-keeper: condition: service_healthy playwright-service: condition: service_started volumes: redis-data: