92 lines
2.9 KiB
YAML
92 lines
2.9 KiB
YAML
# ThothII standalone development/smoke stack.
|
|
# Run with the canonical local env file:
|
|
# docker compose --env-file deploy/env/local.env -f docker-compose.dev.yml up -d --build
|
|
# frontend: http://localhost:8090 backend: http://localhost:8787
|
|
name: thothii-dev
|
|
|
|
services:
|
|
core:
|
|
build:
|
|
context: .
|
|
dockerfile: docker/core.Dockerfile
|
|
image: thothii-core:local
|
|
environment:
|
|
HOST: 0.0.0.0
|
|
PORT: "8787"
|
|
THT_HARNESS_DIR: /app/harness
|
|
THT_BIN: /opt/venv/bin/tht
|
|
PI_BIN: pi
|
|
AUTH_MODE: none
|
|
THT_SESSION_STORAGE: local
|
|
THT_HOME: /data/local-home
|
|
THT_DATA_ROOT: /data
|
|
SETTINGS_FILE: /data/settings/settings.json
|
|
THT_MAINTENANCE_FILE: /data/settings/maintenance.json
|
|
THT_WORKSPACE_REGISTRY_ROOT: /data/workspace-registry
|
|
THT_WORKSPACE_GIT_REMOTE: ${THT_WORKSPACE_GIT_REMOTE:?set THT_WORKSPACE_GIT_REMOTE}
|
|
THT_WORKSPACE_GIT_BRANCH: ${THT_WORKSPACE_GIT_BRANCH:-main}
|
|
THT_WORKSPACE_INSTALLATION_ID: ${THT_WORKSPACE_INSTALLATION_ID:-local}
|
|
THT_WORKSPACE_GIT_AUTHOR_NAME: ${THT_WORKSPACE_GIT_AUTHOR_NAME:-Thoth Workspace Registry}
|
|
THT_WORKSPACE_GIT_AUTHOR_EMAIL: ${THT_WORKSPACE_GIT_AUTHOR_EMAIL:-thoth-workspace-registry@localhost}
|
|
THT_WORKSPACE_SECRET_ROOTS: /run/secrets
|
|
THT_SECRETS_FILE: /run/secrets/thothii.secrets
|
|
THT_DB_NAME: ${THT_DB_NAME:-}
|
|
THT_DWH_REST_URL: ${THT_DWH_REST_URL:-}
|
|
THT_VEC_REST_URL: ${THT_VEC_REST_URL:-}
|
|
THT_VEC_WRITE_REST_URL: ${THT_VEC_WRITE_REST_URL:-}
|
|
THT_OLLAMA_URL: ${THT_OLLAMA_URL:-}
|
|
THT_LLM_URL: ${THT_LLM_URL:-}
|
|
MAX_PI_PROCESSES: ${MAX_PI_PROCESSES:-4}
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
volumes:
|
|
- dev-data:/data
|
|
- dev-pi-state:/home/thoth/.pi
|
|
- ${PI_AUTH_FILE:?set PI_AUTH_FILE}:/home/thoth/.pi/agent/auth.json:ro
|
|
- ./deploy/pi/models.json:/home/thoth/.pi/agent/models.json:ro
|
|
- ./deploy/pi/settings.json:/home/thoth/.pi/agent/settings.json:ro
|
|
- workspace-registry:/data/workspace-registry
|
|
- ${THT_DEV_EVIDENCE_HOST_PATH:-./evidence}:/data/evidence:ro
|
|
secrets:
|
|
- source: thothii_secrets
|
|
target: thothii.secrets
|
|
ports:
|
|
- "127.0.0.1:8787:8787"
|
|
healthcheck:
|
|
test: ["CMD", "curl", "-fsS", "http://127.0.0.1:8787/health"]
|
|
interval: 15s
|
|
timeout: 3s
|
|
retries: 5
|
|
start_period: 30s
|
|
restart: "no"
|
|
networks: [thothii-net]
|
|
|
|
frontend:
|
|
build:
|
|
context: .
|
|
dockerfile: docker/frontend.Dockerfile
|
|
args:
|
|
VITE_BASE: /
|
|
VITE_BACKEND_URL: /api
|
|
image: thothii-frontend:local
|
|
ports:
|
|
- "127.0.0.1:8090:8080"
|
|
depends_on:
|
|
core:
|
|
condition: service_healthy
|
|
restart: "no"
|
|
networks: [thothii-net]
|
|
|
|
networks:
|
|
thothii-net:
|
|
driver: bridge
|
|
|
|
volumes:
|
|
dev-data:
|
|
dev-pi-state:
|
|
workspace-registry:
|
|
|
|
secrets:
|
|
thothii_secrets:
|
|
file: "${THT_SECRETS_FILE:?set THT_SECRETS_FILE}"
|