Koel
一个基于 Web 的个人音乐流媒体服务,界面精美,自托管,支持多平台。
智能下载
前往项目主页
该项目暂未提供安装包,请直接访问源代码仓库
自己搭建私人音乐服务器,随时随地听你的歌。
核心功能
- 基于 Vue + Laravel 的现代 Web 界面,响应迅速
- 支持多种音频格式(MP3、FLAC、OGG 等)
- 播放列表管理、搜索、艺术家/专辑浏览
- 官方移动应用(iOS 和 Android)
- 自托管,完全掌控数据隐私
避坑指南
- •需要一定的服务器运维知识,对非开发者有一定门槛;默认不含音乐文件,需自行上传;移动端网页版功能受限,建议使用官方 App。
适用场景
- 搭建私人音乐服务器,替代网易云/Spotify 等商业服务
- 在家庭网络中共享音乐库,多设备同步播放
详细介绍
Koel 是一个基于 Web 的个人音频流媒体服务,让你能随时随地收听自己的音乐收藏。前端使用 Vue.js,后端使用 Laravel,拥有美观且响应式的界面,支持浏览、搜索和播放音乐。它支持多种音频格式,提供播放列表管理,并有官方的 iOS 和 Android 移动应用。Koel 面向 Web 开发者和音乐爱好者,让你完全掌控自己的音乐库,无需依赖第三方云服务。
常见问题与排障 (2)
故障排除如何修复 Koel 扫描无法从数据库中移除已删除歌曲的问题?
当扫描后的事件监听器因缺少必需的 Laravel 环境变量(尤其是 QUEUE_CONNECTION)而无法运行时,就会发生这种情况。请将你的 .env 文件与 .env.example 进行对比,并添加示例文件底部的 Laravel 特定变量。对于没有独立队列工作进程的标准 Koel/Docker 部署,请确保 QUEUE_CONNECTION=sync。然后重启容器并重新扫描:
docker restart <koel-container>
docker exec -it <koel-container> php artisan koel:scan
扫描完成后,文件已从存储中移除的歌曲将从 songs 表中删除,并从 Web 界面中消失。
故障排除如何修复向 Koel 上传大型 FLAC/音频文件时出现的"Server error"错误(50MB 限制)?
Koel 默认的 50MB 上传上限来自 PHP 的 upload_max_filesize 和 post_max_size 设置。要提高该上限:
1. 将 Koel 仓库根目录下的 .htaccess.example 复制为 .htaccess(如果尚未存在)。
2. 编辑文件底部的值,将 50M 改为你想要的上限,例如:
php_value upload_max_filesize 800M
php_value post_max_size 800M3. 保存文件——Apache 会立即应用
.htaccess 的更改,无需重启。
注意:如果你使用官方 Koel Docker 镜像,其自带的 php.ini 已将上限设置为 800M,因此请让你的 .htaccess 与该值保持一致。另外,如果你通过 Cloudflare 代理,免费套餐会将请求/响应大小限制在 100MB——上传超过该大小的文件时,请暂时禁用 Cloudflare 代理(DNS-only 模式)。
标签
快速上手
安装软件
双击下载的安装程序,按提示完成安装
步骤1:准备 PHP 8.1+、MySQL/MariaDB 和 Composer 环境
步骤2:克隆项目并运行 composer install 安装依赖
步骤3:执行 php artisan koel:init 初始化配置和数据库
- 步骤1:准备 PHP 8.1+、MySQL/MariaDB 和 Composer 环境
- 步骤2:克隆项目并运行 composer install 安装依赖
- 步骤3:执行 php artisan koel:init 初始化配置和数据库
暂未获取到校验码
该项目暂未在 GitHub Release 页面提供 SHA-256 校验码
SHA256 校验码
暂无校验码
建议从 GitHub Releases 页面直接下载,并自行核对文件完整性
本平台所有 SHA-256 校验码均提取自项目在 GitHub 官方 Release 页面发布的文件,未做任何修改。你可以通过 GitHub Releases 页面自行验证。
开源透明
查看 GitHub 源码卸载说明
删除项目目录,并删除对应的数据库即可。如果通过 Docker 部署,则删除容器和镜像。
无额外依赖
下载后即可直接使用,无需安装其他运行环境
遇到问题?查看下方 FAQ
2 FAQs