Files
000-platform/deploy/Dockerfile.frontend
Admin b6b5ac61af
All checks were successful
continuous-integration/drone/push Build is passing
fix: 修复 Drone 配置和 nginx 多环境支持
- 分离测试/生产环境的前端镜像构建
- nginx 配置使用 BACKEND_HOST 变量区分环境
- 生产环境添加独立的 Docker network
- 生产环境使用独立的密钥配置 (xxx_prod)
- 修复前端空白问题:确保前后端在同一 network
2026-01-24 17:15:12 +08:00

28 lines
716 B
Docker

FROM node:20-alpine as builder
WORKDIR /app
# 安装依赖(使用淘宝镜像)
COPY frontend/package.json ./
RUN npm config set registry https://registry.npmmirror.com && npm install
# 构建
COPY frontend/ .
RUN npm run build
# 生产镜像
FROM nginx:alpine
# 后端服务地址(通过 build-arg 传入,构建时替换)
ARG BACKEND_HOST=platform-backend-test
COPY --from=builder /app/dist /usr/share/nginx/html
COPY deploy/nginx/frontend.conf /etc/nginx/conf.d/default.conf
# 在构建时替换后端地址(只替换 BACKEND_HOST 变量)
RUN sed -i "s/\${BACKEND_HOST}/${BACKEND_HOST}/g" /etc/nginx/conf.d/default.conf
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]