diff --git a/.dockerignore b/.dockerignore index 403671cb..c1a5bb48 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1,10 +1,17 @@ venv/ .venv/ +node_modules/ + __pycache__/ *.pyc +*.pyo +*.pyd + .git/ -node_modules/ +.github/ + .env config.yaml sessions/ logs/ +state.db diff --git a/Dockerfile b/Dockerfile index a7048beb..e5c822d6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -10,6 +10,8 @@ WORKDIR /app COPY pyproject.toml requirements.txt* ./ +RUN pip install --no-cache-dir browser-use playwright + COPY . . RUN pip install -e . diff --git a/docker-compose.yml b/docker-compose.yml index 5101b0fc..602ccf43 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -7,6 +7,8 @@ services: - "3000:3000" environment: - MAX_CONCURRENT_SESSIONS=5 + - SCREEN_WIDTH=1280 + - SCREEN_HEIGHT=720 - ENABLE_DEBUGGER=true restart: always networks: @@ -23,21 +25,39 @@ services: - .env volumes: - .:/app:ro + - ~/.hermes/config.yaml:/app/config.yaml:ro - ~/.hermes/SOUL.md:/app/SOUL.md:ro + - ~/.hermes/state.db:/app/state.db:rw - ~/.hermes/sessions:/app/sessions:rw - ~/.hermes/logs:/app/logs:rw - - ~/.hermes/workspaces:/app/workspaces:rw + - ~/.hermes/skills:/app/skills:rw + - ~/.hermes/sandboxes:/app/sandboxes:rw + - ~/.hermes/memories:/app/memories:rw + - /var/run/docker.sock:/var/run/docker.sock + - /etc/localtime:/etc/localtime:ro + - /etc/timezone:/etc/timezone:ro + + - /proc/meminfo:/host/meminfo:ro + - /proc/loadavg:/host/loadavg:ro + - /proc/uptime:/host/uptime:ro + + - /home/skyber/disk_sensor:/host/disk_sensor:ro + - /home/skyber/workspaces/hermes:/data:rw environment: - BROWSER_URL=ws://browser:3000 - depend_on: + depends_on: - browser stdin_open: true tty: true restart: always networks: - hermes-net + deploy: + resources: + limits: + memory: 1.5G networks: hermes-net: