# 多阶段构建:先构建 Hexo 博客 FROM node:18-alpine AS builder WORKDIR /app # 复制 package.json 和 pnpm-lock.yaml COPY blog/package.json blog/pnpm-lock.yaml ./ # 安装 pnpm RUN npm install -g pnpm # 安装依赖 RUN pnpm install # 复制 Hexo 源码 COPY blog/ ./ # 构建静态文件 RUN pnpm run build # 使用官方 Nginx 镜像作为基础 FROM nginx:alpine # 删除默认的 Nginx 配置 RUN rm -rf /usr/share/nginx/html/* # 从构建阶段复制静态文件到 Nginx 目录 COPY --from=builder /app/public /usr/share/nginx/html # 暴露 80 端口 EXPOSE 80 # 启动 Nginx