diff --git a/ts/Containerfile b/ts/Containerfile index 3b65971a..acdf0ab5 100644 --- a/ts/Containerfile +++ b/ts/Containerfile @@ -9,18 +9,18 @@ RUN corepack enable && corepack prepare pnpm@9.15.0 --activate WORKDIR /app # Copy workspace config first for layer caching -COPY package.json pnpm-lock.yaml pnpm-workspace.yaml turbo.json tsconfig.base.json ./ +COPY package.json pnpm-lock.yaml pnpm-workspace.yaml turbo.json tsconfig.base.json tsconfig.json ./ COPY packages/base/package.json packages/base/tsconfig.json packages/base/ COPY packages/client/package.json packages/client/tsconfig.json packages/client/ COPY packages/flow/package.json packages/flow/tsconfig.json packages/flow/ COPY packages/cli/package.json packages/cli/tsconfig.json packages/cli/ COPY packages/mcp/package.json packages/mcp/tsconfig.json packages/mcp/ +COPY packages/workbench/package.json packages/workbench/tsconfig.json packages/workbench/ RUN pnpm install --frozen-lockfile # Copy source and build COPY packages/ packages/ -COPY tsconfig.json ./ RUN pnpm build # --------------------------------------------------------------------------- diff --git a/ts/deploy/docker-compose.yml b/ts/deploy/docker-compose.yml index a41b7991..9d8d3b55 100644 --- a/ts/deploy/docker-compose.yml +++ b/ts/deploy/docker-compose.yml @@ -1,6 +1,6 @@ # TrustGraph TypeScript — Full Stack # Usage: docker compose up -d -# Observability UI: http://localhost:3000 (Grafana) +# Observability UI: http://localhost:3030 (Grafana) networks: trustgraph: @@ -15,6 +15,7 @@ volumes: loki-data: tempo-data: grafana-data: + librarian-data: services: # --------------------------------------------------------------------------- @@ -165,7 +166,7 @@ services: grafana: image: grafana/grafana:latest ports: - - "3000:3000" + - "3030:3000" volumes: - ./grafana/provisioning/datasources.yml:/etc/grafana/provisioning/datasources/datasources.yml:ro - ./grafana/provisioning/dashboards.yml:/etc/grafana/provisioning/dashboards/dashboards.yml:ro @@ -283,3 +284,41 @@ services: networks: - trustgraph restart: unless-stopped + + agent: + image: trustgraph-ts:local + command: ["node", "entrypoints/agent.mjs"] + environment: + - NATS_URL=nats://nats:4222 + depends_on: + nats: + condition: service_healthy + networks: + - trustgraph + restart: unless-stopped + + librarian: + image: trustgraph-ts:local + command: ["node", "entrypoints/librarian.mjs"] + environment: + - NATS_URL=nats://nats:4222 + volumes: + - librarian-data:/app/data + depends_on: + nats: + condition: service_healthy + networks: + - trustgraph + restart: unless-stopped + + flow-manager: + image: trustgraph-ts:local + command: ["node", "entrypoints/flow-manager.mjs"] + environment: + - NATS_URL=nats://nats:4222 + depends_on: + nats: + condition: service_healthy + networks: + - trustgraph + restart: unless-stopped diff --git a/ts/packages/workbench/Containerfile b/ts/packages/workbench/Containerfile index b2d3aef7..d31ed69a 100644 --- a/ts/packages/workbench/Containerfile +++ b/ts/packages/workbench/Containerfile @@ -7,15 +7,17 @@ FROM node:22-slim AS builder RUN corepack enable && corepack prepare pnpm@9.15.0 --activate WORKDIR /app -COPY package.json pnpm-lock.yaml pnpm-workspace.yaml turbo.json tsconfig.base.json ./ +COPY package.json pnpm-lock.yaml pnpm-workspace.yaml turbo.json tsconfig.base.json tsconfig.json ./ COPY packages/base/package.json packages/base/tsconfig.json packages/base/ COPY packages/client/package.json packages/client/tsconfig.json packages/client/ +COPY packages/flow/package.json packages/flow/tsconfig.json packages/flow/ +COPY packages/cli/package.json packages/cli/tsconfig.json packages/cli/ +COPY packages/mcp/package.json packages/mcp/tsconfig.json packages/mcp/ COPY packages/workbench/package.json packages/workbench/tsconfig.json packages/workbench/vite.config.ts packages/workbench/ RUN pnpm install --frozen-lockfile COPY packages/ packages/ -COPY tsconfig.json ./ RUN pnpm build --filter=@trustgraph/workbench # ---------------------------------------------------------------------------