services: init-profile: image: ghcr.io/fa0311/twitter_api_safe_relay:latest-init-profile container_name: nitter-relay-init-profile restart: "no" volumes: - relay_user_data:/profile twitter-relay-kasmweb: image: kasmweb/chrome:1.18.0 container_name: nitter-relay-kasmweb restart: unless-stopped depends_on: init-profile: condition: service_completed_successfully ports: - "6901:6901" - "6900:3000" environment: VNC_PW: "password" APP_ARGS: "--start-maximized --user-data-dir=/home/kasm-user/chrome-profile --password-store=basic --remote-debugging-port=9222" volumes: - relay_user_data:/home/kasm-user/chrome-profile shm_size: "4gb" twitter-relay-dashboard: image: ghcr.io/fa0311/twitter_api_safe_relay:latest-dashboard-slim container_name: nitter-relay-twitter-api-safe-relay restart: unless-stopped depends_on: twitter-relay-kasmweb: condition: service_started volumes: - ./settings.json:/app/settings.json:ro network_mode: "service:twitter-relay-kasmweb" nitter: build: context: .. container_name: nitter-relay-nitter restart: unless-stopped depends_on: nitter-redis: condition: service_healthy twitter-relay-dashboard: condition: service_started ports: - "127.0.0.1:8080:8080" environment: TWITTER_RELAY_BASE_URL: "http://twitter-relay-kasmweb:3000/" volumes: - ./nitter-relay.conf:/src/nitter.conf:ro - ./nitter-relay.sessions.jsonl:/src/sessions.jsonl:ro nitter-redis: image: redis:6-alpine container_name: nitter-relay-redis command: redis-server --save 60 1 --loglevel warning restart: unless-stopped healthcheck: test: redis-cli ping interval: 30s timeout: 5s retries: 2 volumes: relay_user_data: