15 lines
500 B
Docker
15 lines
500 B
Docker
FROM node:24-alpine AS build
|
|
WORKDIR /app
|
|
COPY package*.json ./
|
|
RUN npm ci --no-audit --no-fund
|
|
COPY index.html ./
|
|
COPY src ./src
|
|
COPY public ./public
|
|
RUN npm run build
|
|
FROM nginx:1.28-alpine
|
|
COPY nginx.conf /etc/nginx/conf.d/default.conf
|
|
COPY --from=build --chmod=0755 /app/dist/ /usr/share/nginx/html/
|
|
RUN find /usr/share/nginx/html -type f -exec chmod 644 {} \;
|
|
EXPOSE 8080
|
|
HEALTHCHECK --interval=30s --timeout=3s --start-period=5s CMD wget -q -O /dev/null http://127.0.0.1:8080/healthz || exit 1
|