feat: self-hosted Honcho memory provider (PostgreSQL + Redis) #51

Open
Hermes wants to merge 15 commits from feat/honcho-only-rebased into master
5 changed files with 243 additions and 0 deletions
Showing only changes of commit 9b20dfe67f - Show all commits

View File

@@ -176,11 +176,29 @@ services:
- /mnt/HoardingCow_docker_data/Honcho/data:/app/data - /mnt/HoardingCow_docker_data/Honcho/data:/app/data
networks: networks:
- ai_backend - ai_backend
- ai_net
depends_on: depends_on:
honcho-db: honcho-db:
condition: service_healthy condition: service_healthy
honcho-redis: honcho-redis:
condition: service_healthy condition: service_healthy
labels:
- "traefik.enable=true"
# Router for HTTP + redirect to HTTPS
- "traefik.http.routers.honcho-http.rule=Host(`honcho.lazyworkhorse.net`)"
- "traefik.http.routers.honcho-http.entrypoints=web"
- "traefik.http.routers.honcho-http.middlewares=redirect-to-https"
# Router for HTTPS with TLS — protected by Authelia
- "traefik.http.routers.honcho-https.rule=Host(`honcho.lazyworkhorse.net`)"
- "traefik.http.routers.honcho-https.entrypoints=websecure"
- "traefik.http.routers.honcho-https.tls=true"
- "traefik.http.routers.honcho-https.tls.certresolver=njalla"
- "traefik.http.routers.honcho-https.middlewares=hermes-auth"
# Service Loadbalancer
- "traefik.http.services.honcho.loadbalancer.server.port=8000"
honcho-db: honcho-db:
image: pgvector/pgvector:pg15 image: pgvector/pgvector:pg15

View File

@@ -51,12 +51,6 @@ RUN . /opt/hermes/.venv/bin/activate && \
WORKDIR /opt/hermes WORKDIR /opt/hermes
# ---------- Memory provider dependencies ----------
# httpx: HTTP client for OpenViking plugin
# honcho-ai: already installed in upstream image (v2.1.1+)
RUN . /opt/hermes/.venv/bin/activate && \
uv pip install --no-cache-dir httpx
# ---------- Piper TTS ---------- # ---------- Piper TTS ----------
RUN . /opt/hermes/.venv/bin/activate && \ RUN . /opt/hermes/.venv/bin/activate && \
uv pip install --no-cache-dir piper-tts sounddevice numpy && \ uv pip install --no-cache-dir piper-tts sounddevice numpy && \