将酷狗概念版 (Kugou Lite) 会员作为洛雪音乐 (LX Music) 的自定义音源。
它包含一个基于 Rust 的后端(负责协议处理和链接解析)以及一个基于 SvelteKit 的管理后台(负责账号管理和二维码登录)。
- 扫码绑定: 每个酷狗概念版账号对应一个独立音源,互不影响。
- 快捷导入: 在后台复制脚本地址,粘贴到 LX Music 的自定义音源即可。
- 名字自定义: 音源标题可自定义,但改完需要重新导入。
- 会员权益: 后台展示概念版VIP / 畅听VIP有效期,方便诊断。
- 音质自动降级: 开启后,自动沿音质档位向下重试,尽量让你听到声音。
- 运行时日志: 取链结果、上游原始业务状态、上游实际返回格式与实测码率以及降级报告,都能在后台查询。
- 一键部署: 提供预构建的
linux/amd64Docker 镜像与 Docker Compose 示例(见下)。
没别的,酷狗概念版是个很好的软件,但却没有一个好用的 PC 端(尤其是在 Linux 端)。
LX Music 的跨平台体验很好,我的歌单在上面同步,恰好我也有概念版会员,于是这个想法便诞生了。
- 本项目仅供学习使用,请尊重版权,禁止用于商业或非法用途!
- 本项目不提供可用的账号,也不包含任何会员破解或音乐解锁行为,所有的音乐播放能力均自使用者自己的账号,请支持正版。
- 本项目仅作为中转服务,通过 KuGouMusicApi 直连官方服务器,不发往第三方 API。
- 本项目按原样提供源码,风险由使用者自负。
项目提供预构建的 linux/amd64 Docker 镜像,发布在 GitHub Container Registry。需要部署两个服务:对外提供管理 UI 和运行时 API 的 kg2lx,以及仅供 Compose 网络内部访问的 KuGouMusicApi。
在任意目录下准备一个 compose.yaml,可以复制下面的示例,按需修改:
services:
# 上游 API。如果有独立部署的 KuGouMusicApi,可以删除此服务,
kugou-api:
image: ghcr.io/dreamalone666/kugou-music-api:45f31fefe97b-p5a78e70e
environment:
# 必须为 lite 才能支持概念版接口
platform: lite
HOST: 0.0.0.0
PORT: 3000
expose:
# 仅在 Compose 网络内暴露
- "3000"
restart: unless-stopped
kg2lx:
image: ghcr.io/dreamalone666/kg2lx:v0.2.0
# 有独立部署的 KuGouMusicApi 时,才需要删除
depends_on:
- kugou-api
environment:
# 【必填】本服务的对外访问地址,用于生成 LX 脚本链接
PUBLIC_BASE_URL: http://your-server-host:8787
# 【必填】管理后台登录 Token,建议修改为强密码
ADMIN_TOKEN: change-me
# 指向上游 API 地址,有独立部署的 KuGouMusicApi时,才需要修改
KUGOU_API_BASE_URL: http://kugou-api:3000
# 监听地址
LISTEN_ADDR: 0.0.0.0:8787
# 数据目录
DATA_DIR: /data
ports:
- "8787:8787"
volumes:
# 持久化存储账号、音源及日志数据
- kg2lx-data:/data
restart: unless-stopped
volumes:
kg2lx-data:启动:
docker compose up -dkg2lx 与 KuGouMusicApi 使用兼容的版本组合。更新版本时,将 kg2lx 镜像替换为目标 release tag,并将 KuGouMusicApi 替换为该 release 兼容的短 commit tag。
- 访问管理后台: 浏览器打开管理后台(比如
PUBLIC_BASE_URL)。 - 连接后端: 在 UI 界面输入您的
ADMIN_TOKEN完成鉴权。 - 添加音源: 进入“添加音源”页面,扫描二维码完成酷狗概念版账号绑定。
- 导入 LX Music:
- 在“音源列表”页面复制 脚本链接 (Script URL)。
- 打开 LX Music 客户端,在设置中将其作为 自定义音源 导入。
较为繁杂,只推荐开发使用。
- KuGouMusicApi:
参考原仓库文档,配置
platform=lite并启动。 - 后端 (Server):
cd server # 配置环境变量 PUBLIC_BASE_URL, ADMIN_TOKEN, KUGOU_API_BASE_URL cargo run
- 前端 (Web):
cd web pnpm install pnpm dev
/server: Rust/Axum 后端,处理 API 请求、账号持久化和音乐链接解析。/web: SvelteKit 管理后台,提供管理音源、扫码登录的 UI 界面。/KuGouMusicApi: (子模块) 核心协议转换服务。
| 变量名 | 描述 | 默认值 |
|---|---|---|
PUBLIC_BASE_URL |
服务对外访问的公网/内网地址 (必填) | - |
ADMIN_TOKEN |
管理后台 API 鉴权 Token (必填) | - |
KUGOU_API_BASE_URL |
KuGouMusicApi 服务的地址 (必填) |
- |
LISTEN_ADDR |
服务监听地址和端口 | 127.0.0.1:8787 |
DATA_DIR |
数据持久化存储目录 | ./data |
WEB_DIST_DIR |
管理后台前端构建产物目录 (开启后同源托管) | - |
ACCOUNT_REFRESH_TTL |
账号登录态保鲜阈值(秒)。只在收到取链请求时按需判断,服务内没有定时任务 | 21600 (6 小时) |
旧名
REFRESH_INTERVAL_SECS仍可读取,但会打一条弃用提示。「刷新间隔」这个叫法会让人以为服务有定时刷新任务,实际上没有——只有取链请求到达时才会判断是否需要刷新登录。
本项目使用 MIT 许可证。
