Refactor Dockerfile to use multi-stage build and optimize image size

This commit is contained in:
Dede Fuji Abdul 2024-04-17 21:11:21 +07:00
parent 3432aed38b
commit afbd3f2153

View File

@ -1,20 +1,20 @@
# syntax=docker/dockerfile:1
# build stage
# FROM node:lts-alpine as builder
# WORKDIR /apkt
# COPY package*.json ./
# RUN npm install && npm install npm-run-all -g
# COPY . .
# RUN npm run build
# # production stage
# FROM nginx:stable-alpine
# COPY --from=builder /apkt/dist /usr/share/nginx/html
# COPY --from=builder /apkt/nginx.conf /etc/nginx/nginx.conf
# EXPOSE 32166
# CMD ["nginx", "-g", "daemon off;"]
FROM node:lts-alpine as builder
WORKDIR /apkt
COPY package*.json ./
RUN npm install
COPY . .
RUN npm run build
# production stage
FROM nginx:stable-alpine
COPY /dist /usr/share/nginx/html
COPY /nginx.conf /etc/nginx/nginx.conf
COPY --from=builder /apkt/dist /usr/share/nginx/html
COPY --from=builder /apkt/nginx.conf /etc/nginx/nginx.conf
EXPOSE 32166
CMD ["nginx", "-g", "daemon off;"]
# FROM nginx:stable-alpine
# COPY /dist /usr/share/nginx/html
# COPY /nginx.conf /etc/nginx/nginx.conf
# EXPOSE 32166
# CMD ["nginx", "-g", "daemon off;"]