前言
之前搭建了koel个人音乐平台,对接fm.last体验起来不错,Lastfm生成数据集。前面文章也有一些错误和一些不好的设置,这里将改正。
更正
1.关于前面文章说的初始化报错。
注:这里有个坑,我看到最后红色提示那里还以为失败,而且还没有提示错在哪里,搜索发现GitHub上有人发issue。但实际是可以使用。
- 实际上我使用的是docker部署,出现这个错误不会影响程序运行,详情看issues。 但是如果你使用的是编译安装就不行,应该是环境问题。
2.mysql配置问题
之前因为不熟悉docker和iptables的配置,所以我给koel开放外网访问,有一定的安全隐患。安装docker的时候会生成一个docker0虚拟网卡,运行容器会分配一个docker0网段的ip。172.17.0.1/16
ip addr |
查看容器ip
docker inspect -f '{{.Name}} - {{.NetworkSettings.IPAddress }}' $(docker ps -aq) |
看到koel的IP为172.17.0.5,建议使用IP段,容器重启IP可能会变化
mysql -u root -p |
.env配置MySQL如下
DB_CONNECTION=mysql |
容器里如果通信不了,可以尝试开放iptables
iptables -A INPUT -p tcp -s 172.17.0.0/16 --dport 3306 -j ACCEPT |
3.Nginx配置问题
前面配置莫名其妙的,反代端口成了8080(默认tomcat端口),导致一系列‘奇怪’错误
4.gclone自动挂载
Last.FM配置
last.fm是一家英国的网络电台和音乐社区,其向发开者提供了丰富的API,于是有很多机构或个人通过调用这些API来生成一些数据集。
配置last.fm
Connecting Koel to Last.fm will instruct Koel to retrieve possible artist and album information from Last.fm as well as support scrobbling. To enable the connection:
在这里生成一个api,也可以查看你已经存在的api。这里,回调地址不用填写。
在.env那里添加两个参数LASTFM_API_KEY
LASTFM_API_SECRET
点击右上角个人信息,Last.fm Integration
那里登录授权
配置文件参考:
APP_NAME=Koel |
修改配置记得执行docker exec koel php artisan koel:init
扫描音乐docker exec koel php artisan koel:sync
Last.FM使用情况