huangjianwu
|
c4413c66a1
|
fix(docker): 修复 Tag push 触发的镜像构建失败
ghcr.io 镜像推送在 v2.1.1 tag 上失败,停在 frontend-builder 第 7/7 步
'pnpm run build':vite loadConfigFromBundledFile 1.5s 内挂掉,没具体行号——
典型现象是 vite.config.ts 顶部 import 的某个 plugin(@tailwindcss/vite)的
native binding 在容器里 require 失败。
三处修复:
1. Dockerfile.complete + BillNote_frontend/Dockerfile:node:18-alpine → node:20-alpine
· Tailwind v4 已不再支持 Node 18(package 现实需要 20+)
· Vite 6 也建议 Node 20+
2. Dockerfile.complete 的 frontend 阶段:复制 pnpm-lock.yaml + 改用 --frozen-lockfile
· 之前没传 lockfile,每次 pnpm install 重解析 semver,有可能拉到比本地更新的 native dep
3. BillNote_frontend/pnpm-lock.yaml 强制入库(git add -f)
· 之前根 .gitignore 有条诡异的 'BiliNote/pnpm-lock.yaml'(拼错的路径),
虽然没真匹配上这个文件,但 lockfile 历史上一直没被提交,导致 CI 与本地依赖图持续漂移
· lockfile 里 @tailwindcss/oxide 同时锁了 musl 与 gnu 变体,alpine 跑没问题
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-05-07 14:01:26 +08:00 |
|
huangjianwu
|
f6a3438079
|
feat(build): 全面优化打包流程,Docker 镜像自动发布到 GHCR
Docker 优化:
- Dockerfile 层缓存(requirements/lockfile 先复制再安装)
- ARG 可配置镜像源,国际用户可覆盖为默认源
- 前端 Dockerfile 改用 corepack + frozen-lockfile
- 精简 .dockerignore,排除 .git 和 Tauri 构建产物
CI/CD 优化:
- docker-build 自动推送到 GHCR,支持 amd64/arm64 双架构
- 桌面端 CI 增加 pip/pnpm/cargo 缓存,升级 actions 版本
- Python 版本对齐为 3.11,增加 Linux 构建矩阵
- build.sh 加 -y 覆盖标志
文档更新:
- README Docker 部署简化为 docker pull + docker run
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-03-23 17:48:34 +08:00 |
|
黄建武
|
be4c3313d4
|
feat(deploy): 重构部署方案并添加 nginx 代理
- 新增 nginx 服务作为前端和后端的代理
- 重新配置前端和后端服务,不再直接暴露端口
- 更新前端 Dockerfile,简化为静态文件服务器- 在 MarkdownViewer 组件中添加 ExternalLink 图标
|
2025-05-06 13:56:43 +08:00 |
|
Jefferyhcool
|
517bf04720
|
feat(deploy): 添加 nginx 反向代理配置并优化前端构建流程
- 新增 nginx 配置模板,用于前端服务的反向代理
- 更新 Dockerfile,使用 pnpm 替代 npm 并添加 nginx 配置
- 添加启动脚本,实现后端健康检查和动态配置 nginx
- 更新 .env.example,为后端主机添加注释说明
- 优化 docker-compose.yml,明确版本号并调整服务依赖
|
2025-04-16 02:04:16 +08:00 |
|
Jefferyhcool
|
0e0b8da317
|
first commit
|
2025-04-13 17:44:54 +08:00 |
|