chore(init): 初始化解忧商行项目并完成 Phase 0 基座
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
# syntax=docker/dockerfile:1.7
|
||||
|
||||
# 第一阶段:构建主站前端静态资源
|
||||
FROM node:24-alpine AS build
|
||||
|
||||
ARG VITE_ADMIN_BASE_PATH=/console-jy8k3m
|
||||
ENV VITE_ADMIN_BASE_PATH=${VITE_ADMIN_BASE_PATH}
|
||||
# 主站后台里「打开独立分销后台」按钮与开通凭证使用的分销后台地址。
|
||||
ARG VITE_DISTRIBUTION_ADMIN_URL=https://distribution.zuhaoc.com
|
||||
ENV VITE_DISTRIBUTION_ADMIN_URL=${VITE_DISTRIBUTION_ADMIN_URL}
|
||||
|
||||
WORKDIR /src
|
||||
COPY frontend/package*.json ./
|
||||
RUN --mount=type=cache,target=/root/.npm \
|
||||
npm ci --prefer-offline --no-audit --fund=false
|
||||
COPY frontend/ .
|
||||
RUN npm run build
|
||||
|
||||
# 第二套独立分销管理后台(React + Ant Design)
|
||||
FROM node:24-alpine AS distribution-build
|
||||
WORKDIR /src
|
||||
COPY distribution-admin/package*.json ./
|
||||
RUN --mount=type=cache,target=/root/.npm \
|
||||
npm ci --prefer-offline --no-audit --fund=false
|
||||
COPY distribution-admin/ .
|
||||
RUN npm run build
|
||||
|
||||
# 第三阶段:Caddy 作为公网入口,托管主站、分销后台和选号网静态资源
|
||||
FROM caddy:2.10-alpine
|
||||
|
||||
COPY --from=build /src/dist /srv/dist
|
||||
# show-dist 由 deploy-prod.sh 在 build 前准备(hfb_show 构建产物或占位页)
|
||||
COPY deploy/caddy/show-dist /srv/show-dist
|
||||
COPY --from=distribution-build /src/dist /srv/distribution-admin
|
||||
|
||||
EXPOSE 80 443
|
||||
Reference in New Issue
Block a user