feat: add shared ai workspace assistant service

This commit is contained in:
Codex
2026-06-09 11:43:58 +03:00
parent 8154890ac9
commit 65da785a9d
13 changed files with 2116 additions and 3 deletions
@@ -21,6 +21,8 @@ services:
condition: service_started
ai-workspace-hub:
condition: service_started
ai-workspace-assistant:
condition: service_started
extra_hosts:
- "id.nodedc.ru:host-gateway"
- "hub.nodedc.ru:host-gateway"
@@ -43,6 +45,7 @@ services:
NODEDC_AUTHENTIK_BASE_URL: http://nodedc-platform-authentik-server:9000
AUTHENTIK_BASE_URL: http://nodedc-platform-authentik-server:9000
NODEDC_NOTIFICATION_CORE_URL: http://notification-core:5185
NODEDC_AI_WORKSPACE_ASSISTANT_URL: http://ai-workspace-assistant:18082
expose:
- "5173"
volumes:
@@ -102,6 +105,50 @@ services:
- identity
- engine
ai-workspace-postgres:
image: postgres:16-alpine
restart: unless-stopped
env_file:
- ${NODEDC_SYNOLOGY_ENV_FILE:-.env.synology}
environment:
POSTGRES_DB: ${AI_WORKSPACE_PG_DB:-nodedc_ai_workspace}
POSTGRES_PASSWORD: ${AI_WORKSPACE_PG_PASS:?ai workspace database password required}
POSTGRES_USER: ${AI_WORKSPACE_PG_USER:-nodedc_ai_workspace}
healthcheck:
test: ["CMD-SHELL", "pg_isready -d $${POSTGRES_DB} -U $${POSTGRES_USER}"]
interval: 30s
timeout: 5s
retries: 5
start_period: 20s
volumes:
- ai-workspace-database:/var/lib/postgresql/data
networks:
- identity
ai-workspace-assistant:
image: nodedc/ai-workspace-assistant:local
build:
context: ./ai-workspace-assistant
restart: unless-stopped
env_file:
- ${NODEDC_SYNOLOGY_ENV_FILE:-.env.synology}
environment:
NODE_ENV: production
PORT: 18082
DATABASE_URL: postgres://${AI_WORKSPACE_PG_USER:-nodedc_ai_workspace}:${AI_WORKSPACE_PG_PASS:?ai workspace database password required}@ai-workspace-postgres:5432/${AI_WORKSPACE_PG_DB:-nodedc_ai_workspace}
AI_WORKSPACE_ASSISTANT_TOKEN: ${AI_WORKSPACE_ASSISTANT_TOKEN:?ai workspace assistant token required}
NODEDC_INTERNAL_ACCESS_TOKEN: ${NODEDC_INTERNAL_ACCESS_TOKEN:-}
expose:
- "18082"
ports:
- "${AI_WORKSPACE_ASSISTANT_HOST_BIND:-127.0.0.1:18082}:18082"
depends_on:
ai-workspace-postgres:
condition: service_healthy
networks:
- identity
- engine
ai-workspace-hub:
image: nodedc/ai-workspace-hub:local
build:
@@ -209,5 +256,6 @@ volumes:
authentik-data:
authentik-certs:
notification-database:
ai-workspace-database:
caddy-data:
caddy-config: