FROM node:18-alpine as smart_web RUN mkdir -p /usr/src/app #定义环境变量 ARG ENV WORKDIR /usr/src/app COPY ./ ./ RUN pwd COPY ./package.json /usr/src/app RUN ls RUN npm i -g pnpm@7.32.2 --registry=https://registry.npmmirror.com/ RUN pnpm install --ignore-scripts RUN pnpm install env-cmd RUN pnpm build:${ENV} RUN ls FROM nginx:latest #容器时间与主机时间相差8小时 # 添加时区环境变量,亚洲,上海 ENV TimeZone=Asia/Shanghai ARG ENV_NGINX_CONFIG # 使用软连接,并且将时区配置覆盖/etc/timezone RUN ln -snf /usr/share/zoneinfo/$TimeZone /etc/localtime && echo $TimeZone > /etc/timezone # 把项目文件下的 nginx_***.conf (nginx的配置文件) 替换掉镜像内的 COPY /docker/${ENV_NGINX_CONFIG} /etc/nginx/conf.d/default.conf ARG BUILD_DIR # --from=admin-dev 可看第一行代码 我把第一个镜像起了一个别名 admin-dev # 从上一个镜像里面复制已经打包好的 dist 文件,到 /usr/share/nginx/html 目录 RUN mkdir -p /www/html/public COPY --from=smart_web /usr/src/app/${BUILD_DIR} /usr/share/nginx/html RUN cat /etc/hosts EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]
前端Dockerfile
最新推荐文章于 2024-02-06 07:55:03 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)