Docker Services

Docker Services

Self-hosted apps, all now running on pmdell docker CTs. Migrations moved the built images + data volumes (not rebuilds, to avoid stale base-image breakage).

Apps

App Runs on Port Notes
evolutly-app docker-vinioki (70.35) 8080 PHP app + MariaDB; image + DB volume migrated
homebox docker-22143 (70.36) 3100 Inventory (SQLite). Needs HBOX_AUTH_API_KEY_PEPPER on recent versions
inventree stack docker-pop (70.31) server/worker/db/cache + docuseal + tunnel-pop
MCP servers docker-vivek (70.32) 8001/8002/8004/8006 datetime, kcls, contacts, homebox — see below

MCP servers (viveks-mcp-servers)

Four running MCP servers, migrated as prebuilt images onto docker-vivek:

Service Port Notes
datetime-mcp 8001
kcls-mcp 8002 KCLS library rooms
contacts-mcp 8004 Google Contacts (OAuth creds in ~/.contacts-mcp)
homebox-mcp 8006 HOMEBOX_URLhttp://192.168.70.36:3100

Base image python:3.12-slim, one Dockerfile, per-service command: override.

Cloudflare tunnels

  • docker-pop runs tunnel-pop (cloudflared, token-managed / remotely configured). Ingress (Zero Trust dashboard) maps hostnames → local services; after the migration the origins were repointed to the new host IP (192.168.70.31).
    Hostname → origin
    forms.1294.org http://192.168.70.31:4001
    inventree.1294.org http://192.168.70.31
    pmhp.1294.org https://192.168.69.1:8006
Tip

Token-managed tunnels store ingress rules in the Cloudflare dashboard, not a local config.yml — so a host move means updating the origins in Zero Trust → Networks → Tunnels → Public Hostnames.

Decommissioned from dockervm-dev (69.210)

Migrated away / removed: evolutly-app → vinioki, homebox → 22143, the 4 MCP servers → docker-vivek. Removed: docker-app (dexy), n8n.

See also

  • pmdell — the docker CTs (731–736) these run on
  • Discord Fleet — the other big service system
  • Repositories — source repos (evolutly-app, viveks-mcp-servers, …)