Files
maxun/Dockerfile.frontend
2026-06-25 16:47:16 +05:30

29 lines
710 B
Docker

FROM node:22-alpine AS builder
WORKDIR /app
COPY package.frontend.json ./package.json
RUN npm install --legacy-peer-deps || npm install --legacy-peer-deps
COPY src ./src
COPY public ./public
COPY index.html ./
COPY vite.config.js ./
COPY tsconfig.json ./
ENV VITE_BACKEND_URL=__VITE_BACKEND_URL__
RUN npm run build
FROM node:22-alpine AS runner
WORKDIR /app
RUN npm install -g serve
COPY --from=builder /app/build ./build
EXPOSE ${FRONTEND_PORT:-5173}
CMD ["sh", "-c", "BACKEND=\"${VITE_BACKEND_URL:-${BACKEND_URL:-http://localhost:8080}}\"; grep -rl '__VITE_BACKEND_URL__' build 2>/dev/null | xargs -r sed -i \"s|__VITE_BACKEND_URL__|${BACKEND}|g\"; exec serve -s build -l ${FRONTEND_PORT:-5173}"]