CRA-Helper/docker/web.Dockerfile
sylvain p 071a8aa3ac Drop attached_assets folder
Removes 7 unused PNGs (Replit-generated screenshots) plus the matching
@assets Vite alias and the docker/web.Dockerfile copy step. Nothing
in the source code imported from this alias.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 12:43:33 +02:00

31 lines
994 B
Docker

# syntax=docker/dockerfile:1.7
FROM node:24-slim AS base
RUN npm install -g pnpm@10
WORKDIR /repo
FROM base AS deps
COPY .npmrc package.json pnpm-lock.yaml pnpm-workspace.yaml tsconfig.base.json tsconfig.json ./
COPY artifacts/api-server/package.json artifacts/api-server/
COPY artifacts/cra-app/package.json artifacts/cra-app/
COPY artifacts/mockup-sandbox/package.json artifacts/mockup-sandbox/
COPY lib/api-client-react/package.json lib/api-client-react/
COPY lib/api-spec/package.json lib/api-spec/
COPY lib/api-zod/package.json lib/api-zod/
COPY lib/db/package.json lib/db/
COPY scripts/package.json scripts/
RUN pnpm install --frozen-lockfile
FROM deps AS build
COPY lib lib
COPY artifacts/cra-app artifacts/cra-app
ENV NODE_ENV=production
ENV PORT=80
ENV BASE_PATH=/
RUN pnpm --filter @workspace/cra-app run build
FROM nginx:alpine AS runtime
COPY docker/nginx.conf /etc/nginx/conf.d/default.conf
COPY --from=build /repo/artifacts/cra-app/dist/public /usr/share/nginx/html
EXPOSE 80