mirror of
https://github.com/JefferyHcool/BiliNote.git
synced 2026-07-12 16:11:34 +08:00
Merge pull request #349 from JefferyHcool/fix/docker-frontend-build
fix(docker): 修复 Tag push 触发的镜像构建失败
This commit is contained in:
@@ -1,5 +1,6 @@
|
|||||||
# === 前端构建阶段 ===
|
# === 前端构建阶段 ===
|
||||||
FROM node:18-alpine AS builder
|
# Tailwind v4 / Vite 6 需要 Node 20+,alpine + pnpm 会按 lockfile 拉 musl native binary。
|
||||||
|
FROM node:20-alpine AS builder
|
||||||
|
|
||||||
RUN corepack enable && corepack prepare pnpm@latest --activate
|
RUN corepack enable && corepack prepare pnpm@latest --activate
|
||||||
|
|
||||||
|
|||||||
10810
BillNote_frontend/pnpm-lock.yaml
generated
Normal file
10810
BillNote_frontend/pnpm-lock.yaml
generated
Normal file
File diff suppressed because it is too large
Load Diff
@@ -26,15 +26,18 @@ RUN pip install --no-cache-dir -i ${PIP_INDEX} -r requirements.txt
|
|||||||
COPY ./backend /tmp/backend
|
COPY ./backend /tmp/backend
|
||||||
|
|
||||||
# === 阶段2:构建 Frontend ===
|
# === 阶段2:构建 Frontend ===
|
||||||
FROM node:18-alpine AS frontend-builder
|
# Node 18-alpine 跑不动 Tailwind v4 / Vite 6(前者要求 Node 20+,后者推荐 Node 20+),
|
||||||
|
# 升到 node:20-alpine。alpine 走 musl,pnpm 会按 lockfile 拉 *-linux-x64-musl native binary。
|
||||||
|
FROM node:20-alpine AS frontend-builder
|
||||||
|
|
||||||
RUN corepack enable && corepack prepare pnpm@latest --activate
|
RUN corepack enable && corepack prepare pnpm@latest --activate
|
||||||
|
|
||||||
WORKDIR /tmp/frontend
|
WORKDIR /tmp/frontend
|
||||||
|
|
||||||
# 先复制 package.json 利用依赖层缓存
|
# 先复制 package.json + lockfile 利用依赖层缓存
|
||||||
COPY ./BillNote_frontend/package.json ./
|
# --frozen-lockfile 保证 CI 与本地开发依赖版本一致,杜绝 semver 漂移引入的破坏性升级
|
||||||
RUN pnpm install
|
COPY ./BillNote_frontend/package.json ./BillNote_frontend/pnpm-lock.yaml ./
|
||||||
|
RUN pnpm install --frozen-lockfile
|
||||||
|
|
||||||
COPY ./BillNote_frontend /tmp/frontend
|
COPY ./BillNote_frontend /tmp/frontend
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user