| 12345678910111213141516171819202122232425262728 |
- # --- 阶段一:构建阶段 (Build Stage) ---
- FROM registry.cn-chengdu.aliyuncs.com/azysrv/node:16.20.2-buster-slim AS build-stage
- ARG BUILD_ENV
- ENV NPM_CONFIG_REGISTRY=https://registry.npmmirror.com
- # 设置容器内的工作目录
- WORKDIR /app
-
- # 利用 Docker 缓存机制:先拷贝 package.json
- COPY package*.json ./
-
- # 安装依赖
- RUN npm install
-
- # 拷贝所有源代码
- COPY . .
-
- # 执行打包命令(通常生成 dist 目录)
- RUN npm run build
-
- # --- 阶段二:生产阶段 (Production Stage) ---
- FROM registry.cn-chengdu.aliyuncs.com/azysrv/nginx_npm:1.21 AS production-stage
- # --- 阶段二重新声明变量 ---
- ARG BUILD_ENV
- RUN sed -i 's/8080/4040/' /etc/nginx/conf.d/http.conf
- COPY --from=build-stage /app/dist/ /opt/webroot/
|