Meting API 的容器化部署
参考 xizeyoupan/Meting-API: 🐳 Meting API 的容器化与部署 (github.com)
运行下面的命令下载 Meting-API 镜像
docker pull intemd/meting-api:latest
然后运行 Meting-API 即可
docker run -d --name meting -p 3000:3000 intemd/meting-api:latest
希望docker服务重启或服务器重启时,Meting-API也能重启
docker container update --restart=always meting
Nginx反向代理启用https
这里有一个坑,如图所示,注意location内的内容
使用二级域名复用443端口时,正确的写法如下
server {
listen 443 ssl;
server_name webmusicapi.colorfulstage.cn;
ssl_certificate /home/webmusicapi.colorfulstage.cn_nginx/webmusicapi.colorfulstage.cn_bundle.pem;
ssl_certificate_key /home/webmusicapi.colorfulstage.cn_nginx/webmusicapi.colorfulstage.cn.key;
location /{
proxy_set_header X-Forwarded-Url $scheme://$host:$server_port;
proxy_pass http://localhost:3000;
}
}
之后执行nginx -s reload
重新加载配置即可愉快地使用API
[进阶] API防盗链配置
server{}
中添加referer限制,可以限制为只允许自己的主站,以*.colorfulstage.cn;
为例
valid_referers *.colorfulstage.cn;
if ($invalid_referer) {
return 403;
}
完整配置如下
server {
listen 443 ssl;
server_name webmusicapi.colorfulstage.cn;
ssl_certificate /home/webmusicapi.colorfulstage.cn_nginx/webmusicapi.colorfulstage.cn_bundle.pem;
ssl_certificate_key /home/webmusicapi.colorfulstage.cn_nginx/webmusicapi.colorfulstage.cn.key;
valid_referers *.colorfulstage.cn;
if ($invalid_referer) {
return 403;
}
location /{
proxy_set_header X-Forwarded-Url $scheme://$host:$server_port;
proxy_pass http://localhost:3000;
}
}