Files
LegacyHUB/docker-compose.server.yml
Vadim Malanov 924888c951
Some checks failed
CI / Backend (lint + tests + compose) (push) Has been cancelled
CI / Frontend (lint + type-check + build) (push) Has been cancelled
feat(deploy): server overlay and teamhub-deploy manifest for the VM
2026-07-11 10:23:39 +03:00

70 lines
2.2 KiB
YAML

# Server overlay for the TeamHUB VM (Stage 5, debug window before the gateway).
#
# Usage (teamhub-deploy does this via deploy/teamhub-deploy.json):
# docker compose -f docker-compose.yml -f docker-compose.server.yml up -d --build
#
# Compared with the standalone dev compose this overlay:
# - moves every backing service onto the internal-only legacyhub_db network
# and strips their published host ports (postgres/minio/opensearch/qdrant/
# redis stay module-internal; OpenSearch keeps the security plugin disabled,
# which is acceptable ONLY while it is strictly internal);
# - publishes the api on ${LEGACYHUB_API_BIND:-127.0.0.1}:8050 — the server
# sets LEGACYHUB_API_BIND=<VM IP> so the teamhub-deploy health gate works;
# once the platform gateway fronts the module, switch to the federation
# overlay docker-compose.teamhub.yml (no host port at all);
# - attaches api and worker to the shared external teamhub_net for the
# dispatch bus (alias legacyhub-api) — teamhub_net is a regular bridge, so
# it also provides the egress needed for first-run HuggingFace downloads;
# - identity enforcement is env-driven: AUTH_REQUIRE_IDENTITY (set true on
# the server; machine paths keep X-API-Key auth).
#
# The shared network must exist first: docker network create teamhub_net
networks:
teamhub_net:
external: true
name: teamhub_net
services:
postgres:
networks: !override [legacyhub_db]
ports: !reset []
restart: always
minio:
networks: !override [legacyhub_db]
ports: !reset []
restart: always
opensearch:
networks: !override [legacyhub_db]
ports: !reset []
restart: always
qdrant:
networks: !override [legacyhub_db]
ports: !reset []
restart: always
redis:
networks: !override [legacyhub_db]
ports: !reset []
restart: always
api:
ports: !override
- "${LEGACYHUB_API_BIND:-127.0.0.1}:${API_HOST_PORT:-8050}:8000"
networks: !override
legacyhub_db: {}
teamhub_net:
aliases: [legacyhub-api]
environment:
AUTH_REQUIRE_IDENTITY: ${AUTH_REQUIRE_IDENTITY:-false}
restart: always
worker:
networks: !override
legacyhub_db: {}
teamhub_net: {}
restart: always