# TrustGraph Workbench — Vite SPA served by nginx. # --------------------------------------------------------------------------- # Stage 1: Build # --------------------------------------------------------------------------- FROM oven/bun:1.3.13-slim AS builder WORKDIR /app COPY package.json bun.lock 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 bun install --frozen-lockfile COPY packages/ packages/ RUN bunx --bun turbo build --filter=@trustgraph/workbench # --------------------------------------------------------------------------- # Stage 2: Serve # --------------------------------------------------------------------------- FROM nginx:alpine COPY --from=builder /app/packages/workbench/dist /usr/share/nginx/html COPY packages/workbench/nginx.conf /etc/nginx/conf.d/default.conf EXPOSE 80