|
|
|
|
@@ -32,7 +32,7 @@ services:
|
|
|
|
|
- default
|
|
|
|
|
container_name: hermes
|
|
|
|
|
entrypoint: ["/bin/bash", "-c",
|
|
|
|
|
"bash /opt/data/hermes-tools/install.sh && exec /usr/bin/tini -g -- /opt/hermes/docker/entrypoint.sh \"$@\"",
|
|
|
|
|
"bash /opt/data/hermes-tools/install.sh && . /opt/hermes/.venv/bin/activate && uv pip install openai 'mautrix[encryption]' -q && mkdir -p /opt/data/logs && for p in ashley claire finn matt paul; do API_SERVER_ENABLED=false nohup hermes --profile $p gateway run >> /opt/data/logs/gateway-$p.log 2>&1 & done && exec /usr/bin/tini -g -- /opt/hermes/docker/entrypoint.sh \"$@\"",
|
|
|
|
|
"hermes-entrypoint"]
|
|
|
|
|
restart: always
|
|
|
|
|
# Gateway run enables the internal API server on port 8642
|
|
|
|
|
@@ -54,6 +54,10 @@ services:
|
|
|
|
|
- TZ=America/Montreal
|
|
|
|
|
volumes:
|
|
|
|
|
- /mnt/HoardingCow_docker_data/Hermes/data:/opt/data
|
|
|
|
|
# Syncthing-shared org files — read-only view of user's agenda
|
|
|
|
|
- /mnt/HoardingCow_docker_data/Syncthing/telos-ro:/opt/data/telos-ro:ro
|
|
|
|
|
# Syncthing-shared inbox — write tasks here, they sync to user's laptop
|
|
|
|
|
- /mnt/HoardingCow_docker_data/Syncthing/telos-rw:/opt/data/telos-rw:rw
|
|
|
|
|
devices:
|
|
|
|
|
- /dev/kfd:/dev/kfd
|
|
|
|
|
- /dev/dri:/dev/dri
|
|
|
|
|
@@ -63,6 +67,35 @@ services:
|
|
|
|
|
networks:
|
|
|
|
|
- ai_backend
|
|
|
|
|
|
|
|
|
|
syncthing:
|
|
|
|
|
image: syncthing/syncthing:latest
|
|
|
|
|
container_name: syncthing
|
|
|
|
|
hostname: syncthing
|
|
|
|
|
restart: always
|
|
|
|
|
ports:
|
|
|
|
|
- "8384:8384"
|
|
|
|
|
- "22000:22000"
|
|
|
|
|
- "21027:21027/udp"
|
|
|
|
|
environment:
|
|
|
|
|
- TZ=America/Montreal
|
|
|
|
|
volumes:
|
|
|
|
|
- /mnt/HoardingCow_docker_data/Syncthing/config:/var/syncthing/config
|
|
|
|
|
- /mnt/HoardingCow_docker_data/Syncthing/telos-ro:/telos-ro
|
|
|
|
|
- /mnt/HoardingCow_docker_data/Syncthing/telos-rw:/telos-rw
|
|
|
|
|
networks:
|
|
|
|
|
- ai_backend
|
|
|
|
|
- ai_net
|
|
|
|
|
labels:
|
|
|
|
|
- "traefik.enable=true"
|
|
|
|
|
- "traefik.http.routers.syncthing-http.rule=Host(`syncthing.lazyworkhorse.net`)"
|
|
|
|
|
- "traefik.http.routers.syncthing-http.entrypoints=web"
|
|
|
|
|
- "traefik.http.routers.syncthing-http.middlewares=redirect-to-https"
|
|
|
|
|
- "traefik.http.routers.syncthing-https.rule=Host(`syncthing.lazyworkhorse.net`)"
|
|
|
|
|
- "traefik.http.routers.syncthing-https.entrypoints=websecure"
|
|
|
|
|
- "traefik.http.routers.syncthing-https.tls=true"
|
|
|
|
|
- "traefik.http.routers.syncthing-https.tls.certresolver=njalla"
|
|
|
|
|
- "traefik.http.services.syncthing.loadbalancer.server.port=8384"
|
|
|
|
|
|
|
|
|
|
ollama:
|
|
|
|
|
build:
|
|
|
|
|
context: ./ollama
|
|
|
|
|
|