lala.im:Funkwhale配置S3对象存储

運維技術·lala.im · 2023-01-19 · 138 人浏览

原文地址:https://lala.im/8575.html,請支持原作者!該處僅作轉載。

仅适用于新安装的Funkwhale,已经有数据的站点不要配置,会导致已有的数据出问题。
Funkwhale安装的方法可以参考一下这篇文章:https://lala.im/8343.html
当前Funkwhale的最新版本是1.2.9,要安装最新版,只需要把上面那篇文章里面下载的文件地址里面含有1.2.4的全部改为1.2.9即可,其他步骤没有任何变化。
这里只记录一下S3配置。我的S3对象存储是用MinIO自建的,安装的方法在:https://lala.im/8564.html
编辑envfile:

nano /srv/funkwhale/.env

需要修改的配置:

AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_STORAGE_BUCKET_NAME=funkwhale
AWS_S3_ENDPOINT_URL=https://minio.example.com

编辑映射到容器内的nginx配置文件:

nano /srv/funkwhale/nginx/funkwhale.template

用下面这段配置:

location ~ /_protected/media/(.+) {
    resolver 1.1.1.1;
    internal;
    proxy_set_header Authorization "";
    proxy_pass $1;
}

替换掉:

location /_protected/media {
    internal;
    alias   ${MEDIA_ROOT};
}

同时添加header(将minio.example.com替换成你自己的域名):

add_header Content-Security-Policy "...img-src 'self' https://minio.example.com data:;...media-src https://minio.example.com 'self' data:";

修改好配置后down掉全部容器再up使新的配置生效:

docker compose down
docker compose up -d

或者也可以直接重启容器:

docker compose restart

宿主机的nginx反向代理不需要做任何改动。测试下能否正常工作:

範例
参考:https://docs.funkwhale.audio/admin/external-storages.html

運維技術 網盤 lala.im
Theme Jasmine by Kent Liao