services: chromium: image: ghcr.io/browserless/chromium:latest container_name: hermes-chromium restart: unless-stopped environment: - TOKEN=hermes-local - TIMEOUT=120000 - CONCURRENT=5 shm_size: 1gb ports: - "3000:3000" chromium-gui: build: context: ./docker/chromium-gui container_name: hermes-chromium-gui restart: unless-stopped shm_size: 1gb ports: - "127.0.0.1:6080:6080" - "127.0.0.1:5900:5900" - "127.0.0.1:9223:9223" healthcheck: test: [ "CMD", "curl", "-fsS", "http://localhost:9223/json/version" ] interval: 10s timeout: 5s retries: 6 hermes-agent: build: . container_name: hermes-agent restart: unless-stopped stdin_open: true tty: true depends_on: - chromium - chromium-gui env_file: - ./workspace/.env - ./hermes_data/.env environment: - BROWSER_USE_CDP_URL=${BROWSER_USE_CDP_URL:-http://chromium-gui:9223} - BROWSER_USE_PYTHON=/opt/browser-use-venv/bin/python volumes: - ./workspace:/workspace - ./hermes_data:/root/.hermes working_dir: /workspace command: [ "hermes", "gateway" ]