Dockerfile 764 B

123456789101112131415161718192021222324252627282930313233343536
  1. # 使用官方的Node.js镜像作为基础镜像
  2. FROM node:14-alpine as build-stage
  3. # 设置工作目录
  4. WORKDIR /app
  5. # 将package.json和package-lock.json添加到工作目录中
  6. COPY package*.json ./
  7. # 安装依赖
  8. RUN npm install
  9. # 将源代码添加到工作目录中
  10. COPY . .
  11. ARG ONLINE=no
  12. RUN if [ "$ONLINE" = "yes" ]; then \
  13. cp config_jx.json config.json; \
  14. fi
  15. # 构建应用
  16. RUN npm run build:prod
  17. # 使用nginx作为生产环境
  18. FROM nginx:stable-alpine as production-stage
  19. # 将构建阶段的文件复制到nginx的html目录
  20. COPY --from=build-stage /app/dist /usr/share/nginx/html
  21. # 将nginx配置文件复制到容器中
  22. COPY nginx.conf /etc/nginx/conf.d/default.conf
  23. # 暴露端口
  24. EXPOSE 80
  25. CMD ["nginx", "-g", "daemon off;"]