Initial version of the Hermes self learning agent setup of JR IT Services.

This commit is contained in:
2026-04-21 11:53:29 +02:00
commit 7f9b0e6c5f
31 changed files with 1966 additions and 0 deletions
+70
View File
@@ -0,0 +1,70 @@
services:
hermes:
image: ${HERMES_IMAGE:-nousresearch/hermes-agent}:${HERMES_TAG:-latest}
container_name: ${COMPOSE_PROJECT_NAME:-alan}-hermes
restart: unless-stopped
command: gateway run
shm_size: ${HERMES_SHM_SIZE:-1g}
ports:
- "127.0.0.1:${HERMES_API_PORT:-18642}:8642"
environment:
TZ: ${TZ:-Europe/Berlin}
volumes:
- ${HERMES_DATA_DIR:-./state/hermes}:/opt/data
healthcheck:
test: ["CMD-SHELL", "python -c \"import urllib.request; urllib.request.urlopen('http://127.0.0.1:8642/health', timeout=3).read()\""]
interval: 30s
timeout: 5s
retries: 5
start_period: 45s
mem_limit: ${HERMES_MEMORY_LIMIT:-4g}
cpus: ${HERMES_CPUS:-2.0}
security_opt:
- no-new-privileges:true
networks:
hermes_private:
agents_shared:
br0_uplink:
aliases:
- hermes
dashboard:
image: ${HERMES_IMAGE:-nousresearch/hermes-agent}:${HERMES_TAG:-latest}
container_name: ${COMPOSE_PROJECT_NAME:-alan}-hermes-dashboard
restart: unless-stopped
command: dashboard --host 0.0.0.0
profiles: ["dashboard"]
ports:
- "127.0.0.1:${HERMES_DASHBOARD_PORT:-19119}:9119"
environment:
TZ: ${TZ:-Europe/Berlin}
GATEWAY_HEALTH_URL: http://hermes:8642
volumes:
- ${HERMES_DATA_DIR:-./state/hermes}:/opt/data:ro
depends_on:
hermes:
condition: service_healthy
healthcheck:
test: ["CMD-SHELL", "python -c \"import urllib.request; urllib.request.urlopen('http://127.0.0.1:9119', timeout=3).read()\""]
interval: 30s
timeout: 5s
retries: 5
start_period: 30s
mem_limit: ${DASHBOARD_MEMORY_LIMIT:-512m}
cpus: ${DASHBOARD_CPUS:-0.5}
security_opt:
- no-new-privileges:true
networks:
- hermes_private
networks:
hermes_private:
name: ${COMPOSE_PROJECT_NAME:-alan}_hermes_private
driver: bridge
internal: false
agents_shared:
name: ${AGENTS_SHARED_NETWORK:-alan_agents_shared}
external: true
br0_uplink:
name: ${BR0_DOCKER_NETWORK:-br0_lan}
external: true