开源的音乐流媒体服务器koel

什么是koel?

koel是一款网页版的开源个人音乐流媒体播放器,前端基于 vue , 后端基于 laravel PHP Framework 。采用了现代 Web 技术,例如 CSS 网格、音频和拖放 API 等等。遵守 MIT 开源协议。安装 PHP 环境后,可采用 MYSQL 数据库,搭建在服务器上,也可部署到 Docker 上。

title

前言

之前我们介绍并搭建过 airsonic, 一款基于 Java 开发的 Web 音乐应用,今天是另外一款​

title

安装

先建好数据库

title

接下来用 Docker 安装 koel

title

文件夹 装载路径
/docker/koel/covers /var/www/html/public/img/covers
/docker/koel/music /music

title

端口

默认是80,别冲突就可以

title

环境

可变
DB_CONNECTION mysql
DB_HOST 192.168.0.199
DB_DATABASE koel
DB_USERNAME koel
DB_PASSWORD LALZTx6mxba7

title

第一次运行

SSH 连接到群晖,运行

1
2
# docker exec -it <container_name_for_koel> bash
docker exec -it hyzual-koel1 bash

连接成功后,接着运行

1
2
# 初始化项目,包括设置账号和密码
php artisan koel:init

【已知问题】koel:init will fail at the stage where it checks front-end assets. This is known and is due to the absence of node.js and yarn. koel’s frontend assets are already built in this image so this step is not necessary.

title

浏览器中打开 http://群晖IP:2080

title

登录成功后

title

遇到问题

https://域名 访问,返回空白页面,查看网页源代码,发现均为 http 协议,怀疑是不支持 https 协议导致的,根据 Laravel 的特性,应该有单独的设置项。

1
2
# docker exec -it <container_name_for_koel> bash
docker exec -it hyzual-koel1 bash

title

因为 Docker 中未安装 vi,所以需要先安装编辑器

title

1
apt-get install vi

title

1
apt-get update

title

1
apt-get install vim

title

1
2
# 编辑 .env 文件
vi .env

title

重启容器后,一切正常。

使用

歌曲的上传

title

临时用 XLD 转码一张孙露的专辑《一抹伤》做测试

title

或者直接放到 /music 目录,再扫描

title

播放列表

title

总结

颜值不错,很像 Spotify,可惜音乐格式只支持 mp3,这点肯定比不上 airsonic,但是系统占用小于 airsonic,如果你的收藏是 mp3,那这款应用值得一试。

title

参考文档

koel 官方代码
地址:https://github.com/koel/koel)

Koel:一款超酷的私有音乐面板(基于larvel+vue)
地址:https://baiyue.one/archives/1198.html

开源音乐流媒体应用:Koel
地址:http://www.siya89.com/blog/koel