All checks were successful
Auto-Deploy Changed Stacks / deploy (push) Successful in 21s
41 lines
1.8 KiB
YAML
41 lines
1.8 KiB
YAML
services:
|
|
mcp:
|
|
image: ghcr.io/teamcastaldi/kitchenowl-mcp:${IMAGE_TAG:-latest}
|
|
container_name: kitchenowl-mcp
|
|
restart: unless-stopped
|
|
environment:
|
|
- KITCHENOWL_API_URL=${KITCHENOWL_API_URL:-http://kitchenowl-front:80}
|
|
- KITCHENOWL_API_TOKEN=${KITCHENOWL_API_TOKEN}
|
|
- KITCHENOWL_HOUSEHOLD_ID=${KITCHENOWL_HOUSEHOLD_ID:-1}
|
|
- KITCHENOWL_DEFAULT_LIST_ID=${KITCHENOWL_DEFAULT_LIST_ID:-1}
|
|
# Chat UI (optional, default disabled) — see .env.example for details
|
|
- ENABLE_CHAT_UI=${ENABLE_CHAT_UI:-false}
|
|
- CHAT_SHARED_PASSWORD=${CHAT_SHARED_PASSWORD:-}
|
|
- CHAT_SESSION_SECRET=${CHAT_SESSION_SECRET:-}
|
|
- CHAT_SESSION_COOKIE_SECURE=${CHAT_SESSION_COOKIE_SECURE:-true}
|
|
- CHAT_PUBLIC_BASE_URL=${CHAT_PUBLIC_BASE_URL:-}
|
|
- AUTHENTIK_ISSUER=${AUTHENTIK_ISSUER:-}
|
|
- AUTHENTIK_CLIENT_ID=${AUTHENTIK_CLIENT_ID:-}
|
|
- AUTHENTIK_CLIENT_SECRET=${AUTHENTIK_CLIENT_SECRET:-}
|
|
- ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY:-}
|
|
- ANTHROPIC_MODEL=${ANTHROPIC_MODEL:-claude-sonnet-5}
|
|
- CHAT_MAX_TOKENS=${CHAT_MAX_TOKENS:-4096}
|
|
- CHAT_MAX_TOOL_ROUNDS=${CHAT_MAX_TOOL_ROUNDS:-8}
|
|
networks:
|
|
- proxy-net
|
|
- kitchen-owl_kitchenowl-internal
|
|
labels:
|
|
- "traefik.enable=true"
|
|
# /chat rides the same router as /mcp — same container/port, no separate
|
|
# Traefik router needed for the chat UI.
|
|
- "traefik.http.routers.kitchenowl-mcp.rule=Host(`kitchenowl-mcp.castaldifamily.com`)"
|
|
- "traefik.http.routers.kitchenowl-mcp.entrypoints=websecure"
|
|
- "traefik.http.routers.kitchenowl-mcp.tls.certresolver=cloudflare"
|
|
- "traefik.http.services.kitchenowl-mcp.loadbalancer.server.port=8000"
|
|
|
|
networks:
|
|
proxy-net:
|
|
external: true
|
|
kitchen-owl_kitchenowl-internal:
|
|
external: true
|
|
name: kitchen-owl_kitchenowl-internal |