/ Dockerfile.web
Dockerfile.web
 1  FROM node:22-alpine AS builder
 2  
 3  WORKDIR /build
 4  COPY easyshell-web/package.json easyshell-web/package-lock.json* ./
 5  RUN npm install
 6  
 7  COPY easyshell-web/ .
 8  RUN npm run build
 9  
10  FROM nginx:alpine
11  
12  RUN rm /etc/nginx/conf.d/default.conf
13  COPY easyshell-web/nginx.conf /etc/nginx/conf.d/default.conf
14  COPY --from=builder /build/dist /usr/share/nginx/html
15  
16  EXPOSE 80
17  
18  HEALTHCHECK --interval=15s --timeout=5s --retries=3 \
19      CMD curl -sf http://localhost/ || exit 1
20  
21  CMD ["nginx", "-g", "daemon off;"]