43 lines
1.5 KiB
YAML
43 lines
1.5 KiB
YAML
# lvmh daemon + worker builder context. Build worker image first (make worker-image).
|
|
services:
|
|
lvmh:
|
|
build:
|
|
context: .
|
|
dockerfile: daemon/Dockerfile
|
|
image: lvmh-daemon:latest
|
|
container_name: lvmh-daemon
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8686:8686"
|
|
environment:
|
|
LVMH_TOKEN: ${LVMH_TOKEN}
|
|
ZAI_RENAUD_API_KEY: ${ZAI_RENAUD_API_KEY}
|
|
# How spawned containers reach the daemon: alias on the shared network.
|
|
LVMH_CONTAINER_LVMH_URL: ws://lvmh:8686/agent/ws
|
|
GITLAB_BASE_URL: https://git.westphal.fr
|
|
# host path of the pi config, so spawned containers can bind auth.json
|
|
LVMH_HOST_PI_AGENT_DIR: ${LVMH_PI_AGENT_DIR:-/home/raph/.dotfiles/pi/agent}
|
|
OPENAI_API_KEY: ${OPENAI_API_KEY:-}
|
|
GEMINI_API_KEY: ${GEMINI_API_KEY:-}
|
|
DEEPSEEK_KEY: ${DEEPSEEK_KEY:-}
|
|
ANTHROPIC_API_KEY: ${ANTHROPIC_API_KEY:-}
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
- lvmh-data:/data
|
|
- .:/app/build:ro # repo checkout (rsynced by deploy.sh)
|
|
# daemon rebuilds lvmh-worker from /app/build/docker/worker.Dockerfile
|
|
- ./web/dist:/app/web-dist:ro # web UI served from repo checkout
|
|
- ${LVMH_PI_AGENT_DIR:-/home/raph/.dotfiles/pi/agent}:/pi-dotfiles:ro
|
|
# read-only user pi config; POST /api/pi-config/resync bakes it into
|
|
# fresh worker+ops images
|
|
networks:
|
|
lvmh-net:
|
|
aliases: [lvmh]
|
|
|
|
volumes:
|
|
lvmh-data:
|
|
|
|
networks:
|
|
lvmh-net:
|
|
name: lvmh-net
|