# 注意：此方案需要在Docker中安装HBuilderX CLI，步骤较特殊
FROM node:16-alpine AS builder

WORKDIR /app

# 安装HBuilderX CLI（关键：使用官方提供的CLI工具，而非npm包）
RUN apk add --no-cache wget unzip \
    && wget https://download.dcloud.net.cn/hbuilderx/alpha/HBuilderX.3.99.20231011.full.zip -O hbx.zip \
    && unzip hbx.zip -d /opt/hbuilderx \
    && chmod +x /opt/hbuilderx/cli

# 复制项目文件（假设项目是HBuilderX创建的标准结构）
COPY . .

# 使用HBuilderX CLI构建H5项目（避开npm依赖）
RUN /opt/hbuilderx/cli publish --platform h5 --project . --outDir dist

# 生产环境
FROM nginx:1.21-alpine
COPY --from=builder /app/dist /usr/share/nginx/html
COPY nginx.conf /etc/nginx/conf.d/default.conf
EXPOSE 8333
CMD ["nginx", "-g", "daemon off;"]
