Per request: TNC removed, all stacks back on default bridge with legacy links for inter-container DNS (default bridge has no embedded DNS — verified: nameserver passthrough to AdGuard). Kept: traefik router labels (dnsweaver records), dawarich prod + SECRET_KEY_BASE, teslamate/bookorbit hostport removals (service DNS now via links), komodo periphery as separate project with 8120 hostport + server address change.
89 lines
3.6 KiB
YAML
89 lines
3.6 KiB
YAML
# Komodo (mongo, core, MCP proxy) — moved off Unraid compose-manager into the
|
|
# repo so Renovate tracks it. Periphery deliberately lives OUTSIDE this stack
|
|
# (komodo-periphery/): the periphery executes deploys, and a compose child
|
|
# that recreates its own parent dies mid-deploy leaving orphaned containers
|
|
# (see moghtech/komodo discussion #223 — periphery must not be in the Core
|
|
# stack). komodo.skip labels prevent StopAllContainers from taking it down.
|
|
# Renovate bumps are NOT auto-deployed for this stack — update via host:
|
|
# cd /etc/komodo/repos/compose-files/komodo && docker compose up -d
|
|
# Exposed via atlas-traefik (LAN) + pangolin primary (internet) blueprint
|
|
# labels. .env lives next to this file (env_file for core).
|
|
name: komodo
|
|
|
|
services:
|
|
mongo:
|
|
image: mongo:9.0
|
|
container_name: komodo-mongo
|
|
command: --quiet --wiredTigerCacheSizeGB 0.25
|
|
restart: unless-stopped
|
|
network_mode: bridge
|
|
logging:
|
|
driver: ${COMPOSE_LOGGING_DRIVER:-local}
|
|
volumes:
|
|
- /mnt/user/appdata/komodo/mongo/db:/data/db
|
|
- /mnt/user/appdata/komodo/mongo/config:/data/configdb
|
|
environment:
|
|
MONGO_INITDB_ROOT_USERNAME: ${KOMODO_DB_USERNAME}
|
|
MONGO_INITDB_ROOT_PASSWORD: ${KOMODO_DB_PASSWORD}
|
|
labels:
|
|
komodo.skip: # Prevent Komodo from stopping with StopAllContainers
|
|
|
|
core:
|
|
image: ghcr.io/moghtech/komodo-core:${COMPOSE_KOMODO_IMAGE_TAG:-2}
|
|
container_name: komodo-core
|
|
restart: unless-stopped
|
|
init: true
|
|
network_mode: bridge
|
|
links:
|
|
- mongo
|
|
depends_on:
|
|
- mongo
|
|
logging:
|
|
driver: ${COMPOSE_LOGGING_DRIVER:-local}
|
|
ports:
|
|
- 9120:9120
|
|
env_file: ./.env
|
|
environment:
|
|
KOMODO_DATABASE_ADDRESS: mongo:27017
|
|
KOMODO_DATABASE_USERNAME: ${KOMODO_DB_USERNAME}
|
|
KOMODO_DATABASE_PASSWORD: ${KOMODO_DB_PASSWORD}
|
|
volumes:
|
|
## Core cache for repos for latest commit hash / contents
|
|
- /mnt/user/appdata/komodo/core/repos:/repo-cache
|
|
## v2 PKI keys
|
|
- /mnt/user/appdata/komodo/core/keys:/config/keys
|
|
labels:
|
|
- komodo.skip=true # Prevent Komodo from stopping with StopAllContainers
|
|
- traefik.enable=true
|
|
- traefik.http.routers.komodo.rule=Host(`komodo.arnoutvw.nl`)
|
|
- traefik.http.services.komodo.loadbalancer.server.port=9120
|
|
- pangolin.public-resources.komodo.name=Komodo
|
|
- pangolin.public-resources.komodo.full-domain=komodo.arnoutvw.nl
|
|
- pangolin.public-resources.komodo.protocol=http
|
|
- pangolin.public-resources.komodo.ssl=true
|
|
- pangolin.public-resources.komodo.targets[0].method=http
|
|
- pangolin.public-resources.komodo.targets[0].hostname=192.168.10.144
|
|
- pangolin.public-resources.komodo.targets[0].port=9120
|
|
- pangolin.public-resources.komodo.targets[0].healthcheck.hostname=192.168.10.144
|
|
- pangolin.public-resources.komodo.targets[0].healthcheck.port=9120
|
|
- pangolin.public-resources.komodo.targets[0].healthcheck.enabled=true
|
|
- pangolin.public-resources.komodo.auth.sso-enabled=false
|
|
# ssl defaults on. See gitea note: string-typed labels only.
|
|
|
|
komodo-mcp:
|
|
image: ghcr.io/myrikld/komodo-mcp:latest
|
|
container_name: komodo-mcp
|
|
init: true
|
|
network_mode: bridge
|
|
ports:
|
|
- "8333:8000"
|
|
environment:
|
|
- KOMODO_MCP_KOMODO_URL=https://komodo.arnoutvw.nl
|
|
- KOMODO_MCP_KOMODO_API_KEY=K-Bui3dtbn4ZEcO4Hv4keHpFRo1p5FI4GEePwVLn6J
|
|
- KOMODO_MCP_KOMODO_API_SECRET=S-NWNKyfgZEd6XvnpLxIlH21PJtwdOrb9ebKg9L7K5
|
|
restart: unless-stopped
|
|
labels:
|
|
- traefik.enable=true
|
|
- traefik.http.routers.komodomcp.rule=Host(`komodo-mcp.arnoutvw.nl`)
|
|
- traefik.http.services.komodomcp.loadbalancer.server.port=8000
|