docs: P5 / P6 完成,补充 NAS 部署说明
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -38,5 +38,7 @@
|
|||||||
- 服务端永远不把 Cookie 原文返回前端;`relFile` 等路径一律用 `/`
|
- 服务端永远不把 Cookie 原文返回前端;`relFile` 等路径一律用 `/`
|
||||||
- 传给 TrackList 的数组必须稳定(用 computed),否则每次渲染都会清空选择
|
- 传给 TrackList 的数组必须稳定(用 computed),否则每次渲染都会清空选择
|
||||||
- 前端 `ref<null>` 的接口要返回对象包一层(Koa 对 `null` body 返回 204)
|
- 前端 `ref<null>` 的接口要返回对象包一层(Koa 对 `null` body 返回 204)
|
||||||
|
- QQ 登录在 `qq/login.ts`:扫码 = ptlogin2 → graph.qq.com OAuth → `QQConnectLogin.QQLogin`;续期 = `music.login.LoginServer.Login`(网页 Cookie 没有 refresh_key 也能续期,旧 key 不会失效)。`accounts.ts` 的 keeper 每 3 小时检查,过半寿命(key 有效 3 天)即续期。有效性必须用 `GetLoginUserInfo` 判断 —— `vip_login_base` 对失效 key 仍返回 code 0
|
||||||
|
- NAS 部署:宿主机文件是 0700,镜像里必须 `chmod -R a+rX /app`;境外请求靠 `NODE_USE_ENV_PROXY` + `HTTP(S)_PROXY`,`NO_PROXY` 覆盖 QQ / 网易云域名
|
||||||
- TypeScript 固定 6.x:TS 7 没有 JS API,vue-tsc 无法使用
|
- TypeScript 固定 6.x:TS 7 没有 JS API,vue-tsc 无法使用
|
||||||
- 网易云红 / QQ 绿已用 dataviz 校验器验证(深色 QQ 绿 `#42a07d`);二者 CVD 区分度在 6–8,必须配合文字标签使用
|
- 网易云红 / QQ 绿已用 dataviz 校验器验证(深色 QQ 绿 `#42a07d`);二者 CVD 区分度在 6–8,必须配合文字标签使用
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
- **试听**:服务端代理 320K 音源,底部播放条带滚动歌词;曲库与队列中的本地文件也可直接播放
|
- **试听**:服务端代理 320K 音源,底部播放条带滚动歌词;曲库与队列中的本地文件也可直接播放
|
||||||
- **曲库**:浏览音乐目录(封面墙)、生成 M3U、打包 ZIP、移入回收站、批量补全标签与歌词
|
- **曲库**:浏览音乐目录(封面墙)、生成 M3U、打包 ZIP、移入回收站、批量补全标签与歌词
|
||||||
- **历史**:统计(累计、占用、近 30 天、来源与音质分布)、搜索筛选、导出 CSV / JSON
|
- **历史**:统计(累计、占用、近 30 天、来源与音质分布)、搜索筛选、导出 CSV / JSON
|
||||||
- **设置**:QQ 账号(导入 Cookie、VIP 状态校验)、下载默认值、并发与间隔、访问密码、浅色 / 深色
|
- **设置**:QQ 账号(扫码登录 / 导入 Cookie、VIP 校验、musickey 自动续期)、下载默认值、并发与间隔、访问密码、浅色 / 深色
|
||||||
|
|
||||||
## 本机运行
|
## 本机运行
|
||||||
|
|
||||||
@@ -58,11 +58,16 @@ npm start # http://localhost:8066
|
|||||||
## Docker 部署(NAS)
|
## Docker 部署(NAS)
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cd /vol1/1000/dockercompose && git clone <私有仓库地址> shengxia && cd shengxia
|
cd /vol1/1000/dockercompose && git clone https://git.draws.qzz.io/jocay/music-hub.git shengxia && cd shengxia
|
||||||
docker compose up -d --build # http://NAS:8066
|
docker compose up -d --build # http://NAS:8066
|
||||||
```
|
```
|
||||||
|
|
||||||
挂载与端口见 `docker-compose.yml` / `.env.example`。容器以 `PUID:PGID`(默认 `1000:1001`)运行。QQ Cookie 可在设置页导入,或设置 `QQ_COOKIE_FILE` 并挂载该文件。
|
更新:`git pull && docker compose up -d --build`(以 root 操作 jocay 的仓库时加 `git -c safe.directory=$PWD pull`)。
|
||||||
|
|
||||||
|
- 挂载与端口见 `docker-compose.yml` / `.env.example`;容器以 `PUID:PGID`(默认 `1000:1001`)运行
|
||||||
|
- 构建时 Alpine 走腾讯云源、npm 走 npmmirror(阿里云 Alpine 源在 NAS 容器内极慢)
|
||||||
|
- 运行时 chksz 等境外接口经 `OUTBOUND_PROXY`(默认 `http://192.168.31.8:6152`)访问,QQ / 网易云及其 CDN 直连 —— NAS 直连 Cloudflare 会卡 3–15 秒
|
||||||
|
- QQ 音乐:网页「设置 → 扫码登录」,之后 musickey 自动续期
|
||||||
|
|
||||||
## 进度
|
## 进度
|
||||||
|
|
||||||
@@ -71,5 +76,5 @@ docker compose up -d --build # http://NAS:8066
|
|||||||
- [x] P2 QQ 音乐 provider(VIP Cookie)
|
- [x] P2 QQ 音乐 provider(VIP Cookie)
|
||||||
- [x] P3 下载队列、SSE 实时进度、设置、访问密码、曲库与历史接口
|
- [x] P3 下载队列、SSE 实时进度、设置、访问密码、曲库与历史接口
|
||||||
- [x] P4 完整前端
|
- [x] P4 完整前端
|
||||||
- [ ] P5 QQ 扫码登录与 Cookie 自动续期
|
- [x] P5 QQ 扫码登录与 musickey 自动续期
|
||||||
- [ ] P6 NAS 部署验证
|
- [x] P6 NAS 部署(飞牛 `/vol1/1000/dockercompose/shengxia`)
|
||||||
|
|||||||
Reference in New Issue
Block a user