f3679e6176
Introduce a self-contained kustomize stack under deploy/k3s covering namespace, config, placeholder secrets, infra StatefulSets, app Deployments/Services, migration and minio-init Jobs, and Traefik Ingress for both tenant and ops hosts. Add Dockerfile.ops-web so the operations frontend can ship as an nginx image, and extend the offline package script to build and bundle ops-api, kol-assist-worker, and ops-web alongside the k3s manifests. Wire the new ops/security knobs through .env.example and the compose stack. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
25 lines
510 B
Docker
25 lines
510 B
Docker
# syntax=docker/dockerfile:1
|
|
# Build context: repo root (monorepo)
|
|
|
|
FROM node:20-alpine AS builder
|
|
|
|
RUN npm install -g pnpm@9
|
|
|
|
WORKDIR /app
|
|
|
|
COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
|
COPY apps/ops-web/package.json ./apps/ops-web/
|
|
|
|
RUN pnpm install --frozen-lockfile
|
|
|
|
COPY apps/ops-web/ ./apps/ops-web/
|
|
|
|
RUN pnpm --filter ops-web build
|
|
|
|
FROM nginx:1.27-alpine
|
|
|
|
COPY --from=builder /app/apps/ops-web/dist /usr/share/nginx/html
|
|
COPY apps/ops-web/nginx.conf /etc/nginx/conf.d/default.conf
|
|
|
|
EXPOSE 80
|