update:'修改前端dockerfile'

ngks 2 months ago
parent 76ecc83087
commit c87523073d

@ -1,35 +1,42 @@
# 阶段1: 构建阶段 # 阶段1: 构建阶段
FROM node:22.14.0-slim AS builder FROM node:24.7.0-slim AS builder
WORKDIR /app WORKDIR /app
# 全局安装 pnpm RUN npm config set registry https://registry.npmmirror.com \
RUN npm install -g pnpm && npm install -g pnpm \
&& pnpm config set registry https://registry.npmmirror.com
# 复制依赖文件 # 复制依赖文件
COPY package.json pnpm-lock.yaml ./ COPY package.json pnpm-lock.yaml ./
RUN pnpm install --registry https://registry.npmmirror.com
# 复制源码并构建 # 【合并2】强制安装依赖
RUN pnpm install --force \
&& pnpm add -D @unocss/eslint-plugin
COPY . . COPY . .
# 执行生产构建和你本地的build:prod命令一致
RUN pnpm run build:prod RUN pnpm run build:prod
# 阶段2: 生产运行阶段 # 阶段2: 生产运行阶段
FROM node:22.14.0-slim FROM node:24.7.0-slim
WORKDIR /app WORKDIR /app
# 全局安装 pnpm确保运行时可用 # 【合并3】设置npm镜像源 + 全局安装pnpm + 设置pnpm镜像源
RUN npm install -g pnpm --registry https://registry.npmmirror.com RUN npm config set registry https://registry.npmmirror.com \
&& npm install -g pnpm \
&& pnpm config set registry https://registry.npmmirror.com
# 从构建阶段复制所有文件(包括 node_modules 和构建产物)
COPY --from=builder /app . COPY --from=builder /app .
# 设置环境变量 # 设置环境变量
ENV PORT 8088 ENV PORT 8088
ENV NODE_ENV production ENV NODE_ENV production
# 暴露端口
EXPOSE 8088 EXPOSE 8088
# 使用 pnpm 启动 # 启动应用
CMD ["pnpm", "start"] CMD ["pnpm", "start"]
Loading…
Cancel
Save