Files
NuklearRabbitandClaude Sonnet 5 e0c107a94a n8n: store cleaned workflow definitions as repo source of truth
Move the two live-validated workflows into n8n/workflows/ (credential-
based auth referenced by name only, no secret values), add a manifest
covering all 4 canonical workflows and a read-only drift-check script
against n8n's Public API. Retire the pre-integration root-level starter
files that still carried the literal-token pattern, and repoint the
Unraid deploy scripts, Makefile targets and runbook at the new files.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-04 13:34:51 +02:00
..
2026-08-02 03:56:17 +02:00

Unraid deployment

MobilityOps is deployed from a committed source archive; the server does not need Gitea credentials. The portable compose.yaml is combined with compose.unraid.yaml; of the MobilityOps-owned services, only the web application is reachable from the LAN. The host's existing shared n8n remains available on its established port 5678.

Server layout

  • Directory: /mnt/user/appdata/mobilityops
  • Compose project: mobilityops
  • Web: http://192.168.10.150:1236 (1236 on the host to 80 in web)
  • API and PostgreSQL: Compose network only
  • Shared n8n: http://192.168.10.150:5678 (outside the MobilityOps Compose project)

Deploy

Create .env from .env.example, replace every placeholder secret, set MOBILITYOPS_ENV=production, set both public URLs to http://192.168.10.150:1236, and retain KNOWLEDGE_PROVIDER=demo while RAGcore is not available. Keep MCP_HUB_REGISTRATION_ENABLED=false until the central Hub is ready.

cd /mnt/user/appdata/mobilityops
./deploy/unraid/configure-env.sh \
  http://192.168.10.150:1236 \
  http://192.168.10.150:5678/webhook/mobilityops-return
docker compose -p mobilityops -f compose.yaml -f compose.unraid.yaml up --build -d db api web
docker compose -p mobilityops -f compose.yaml -f compose.unraid.yaml exec api \
  python -m app.cli seed --reset

Migrations run automatically in the API entrypoint. Import and publish the MobilityOps workflow into the existing n8n container:

./deploy/unraid/setup-existing-n8n.sh \
  n8n \
  http://192.168.10.150:1236/api/v1/integrations/n8n/return-callback

The callback token remains server-side and is never written to the repository. The bundled n8n service is retained only as a standalone fallback behind the explicit bundled-n8n Compose profile; it is not started in this deployment.

Operate

cd /mnt/user/appdata/mobilityops
docker compose -p mobilityops -f compose.yaml -f compose.unraid.yaml ps
docker compose -p mobilityops -f compose.yaml -f compose.unraid.yaml logs --tail=200
docker compose -p mobilityops -f compose.yaml -f compose.unraid.yaml exec api alembic current
docker logs --tail=200 n8n