字
字节笔记本
2026年2月18日
cicada:自托管多用户音乐服务
API中转
¥120
本文介绍 cicada,一个支持多用户的自托管音乐服务。它允许你在自己的服务器上搭建私人音乐平台,与家人朋友共享音乐收藏,完全掌控自己的音乐数据。
项目简介
cicada 是一个开源的自托管音乐服务,由 mebtte 开发维护。与 Spotify、Apple Music 等流媒体服务不同,cicada 让你在自己的服务器上托管音乐,实现完全的数据自主权。该项目在 GitHub 上已获得 1.1k+ stars。
项目名称 "cicada"(蝉)寓意着夏天和音乐,象征着项目希望为用户带来愉悦的音乐体验。
核心特性
- 自托管部署: 在自己的服务器上运行,数据完全自主
- 多用户支持: 支持多个用户账号,适合家庭或小型团队使用
- 音乐管理: 支持上传、整理、分类管理音乐文件
- 播放列表: 创建和分享播放列表
- 歌词支持: 支持内嵌歌词和外部歌词文件
- 封面管理: 自动获取和编辑专辑封面
- 响应式界面: 现代化的 Web 界面,支持桌面和移动设备
- PWA 支持: 可安装为渐进式 Web 应用
技术栈
- 后端: Node.js + TypeScript
- 前端: React + TypeScript
- 数据库: SQLite
- 构建工具: 自定义构建系统
- 部署方式: Docker / 二进制文件
安装指南
使用 Docker 部署(推荐)
bash
# 创建数据目录
mkdir -p ~/cicada/data
# 运行容器
docker run -d \
--name cicada \
-p 8000:8000 \
-v ~/cicada/data:/data \
mebtte/cicada:latest使用二进制文件部署
bash
# 下载最新版本
wget https://github.com/mebtte/cicada/releases/latest/download/cicada-linux-amd64
chmod +x cicada-linux-amd64
# 运行
./cicada-linux-amd64 --data /path/to/data使用 Docker Compose
yaml
version: '3'
services:
cicada:
image: mebtte/cicada:latest
container_name: cicada
ports:
- "8000:8000"
volumes:
- ./data:/data
- ./music:/music:ro
restart: unless-stopped快速开始
初始配置
- 启动服务: 运行上述部署命令
- 访问界面: 打开浏览器访问
http://localhost:8000 - 创建管理员: 首次访问时创建管理员账号
- 上传音乐: 将音乐文件放入数据目录或使用上传功能
- 扫描音乐: 在设置中触发音乐库扫描
支持的音频格式
- MP3
- FLAC
- OGG
- M4A
- WAV
- WMA
目录结构
text
cicada-data/
├── config.json # 配置文件
├── database.db # SQLite 数据库
├── music/ # 音乐文件目录
│ ├── 艺术家/
│ │ └── 专辑/
│ │ └── 歌曲.mp3
└── cover/ # 封面缓存使用示例
场景 1:家庭音乐服务器
bash
# 在 NAS 或树莓派上部署
docker run -d \
--name cicada \
-p 8000:8000 \
-v /mnt/music:/music:ro \
-v ~/cicada-data:/data \
mebtte/cicada:latest家庭成员可以通过浏览器访问,各自创建账号,共享音乐库。
场景 2:个人音乐收藏管理
- 整理本地音乐文件到标准目录结构
- 部署 cicada 并配置音乐目录
- 自动扫描并获取封面和元数据
- 创建个性化播放列表
配置说明
环境变量
| 变量 | 说明 | 默认值 |
|---|---|---|
DATA | 数据目录 | /data |
PORT | 服务端口 | 8000 |
LOG_LEVEL | 日志级别 | info |
配置文件
json
{
"port": 8000,
"data": "/data",
"music": "/music",
"scanInterval": 3600
}相关资源
- GitHub 仓库: https://github.com/mebtte/cicada
- 问题反馈: https://github.com/mebtte/cicada/issues
- 发布页面: https://github.com/mebtte/cicada/releases
许可证
本项目采用 MIT 许可证开源。
分享: