diff --git a/docker/Dockerfile.frontend b/docker/Dockerfile.frontend index 34fbdff..191c02a 100644 --- a/docker/Dockerfile.frontend +++ b/docker/Dockerfile.frontend @@ -1,11 +1,29 @@ -# 使用Nginx作为生产服务器 +# 构建阶段 +FROM node:18-alpine as build + +# 设置工作目录 +WORKDIR /app + +# 复制package.json和package-lock.json +COPY frontend/package*.json ./ + +# 安装依赖 +RUN npm ci --only=production + +# 复制源代码 +COPY frontend/ . + +# 构建应用 +RUN npm run build + +# 生产阶段 FROM nginx:alpine # 复制Nginx配置 COPY docker/nginx.conf /etc/nginx/nginx.conf -# 复制静态HTML文件 -COPY frontend/index.html /usr/share/nginx/html/ +# 从构建阶段复制构建好的文件 +COPY --from=build /app/dist /usr/share/nginx/html # 暴露端口 EXPOSE 80