services: redis: image: redis:alpine restart: unless-stopped volumes: - redis-data:/data 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 session-keeper: build: ./phpsessid-bot image: gcr.forust.xyz/forust/session-keeper:latest pull_policy: build 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 image: gcr.forust.xyz/forust/webinar-checker:latest pull_policy: build 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: