不会写代码如何做网站,中国500强公司排名名单,阳江市房产信息网官网,事件营销的案例有哪些目录 引言一、搭建Navidrome二、服务穿透三、音流配置 引言
本人手机存储空间128G#xff0c;网易云音乐6个G#xff0c;本就不富裕的空间更是雪上加霜#xff0c;而且重点是#xff0c;我根本没有听几首歌#xff0c;清除缓存后#xff0c;整个软件都还是占用了5个G左右… 目录 引言一、搭建Navidrome二、服务穿透三、音流配置 引言
本人手机存储空间128G网易云音乐6个G本就不富裕的空间更是雪上加霜而且重点是我根本没有听几首歌清除缓存后整个软件都还是占用了5个G左右正巧本人最近购入了一块树莓派zero 2w秉承着不让树莓派变吃灰派的原则所以萌生出了自己搭建音乐服务器的想法。 解决方案 使用Navidrome在树莓派搭建音乐音乐服务器再结合音流app访问歌曲期间为了让树莓派在公网也能访问到所以又使用了云服务器通过frp将树莓派进行穿透这样在局域网外也能访问了。
本人选择Navidrome的理由是它有一个非常打动我的特性。
Very low resource usage. Runs well even on simple Raspberry Pi Zero and old hardware setups
它可以跑在树莓派zero上面树莓派zero 2w的内存只有512mb。
一、搭建Navidrome
本教程所有步骤都是跟着官方教程操作的 一台已经可以进行内网访问的树莓派 下载Navidrome相关脚本并上传至树莓派
注意树莓派是arm架构所以注意下自己使用的服务的架构如果直接使用服务器搭建需要选择amd架构 安装相应的工具 需要安装vim和ffmpeg已经安装了的可以跳过
sudo apt install vim ffmpeg创建文件夹 创建完成后记得添加权限
sudo mkdir /opt/navidrome
sudo mkdir /var/lib/navidrome解压Navidrome的压缩包 sudo tar -xvzf Navidrome.tar.gz -C /opt/navidrome/
sudo chmod -R 777 /opt/navidrome创建音乐库配置文件 在/var/lib/navidrome路径下创建配置文件navidrome.toml
MusicFolder 准备存放音频文件的路径创建后台运行任务 在/etc/systemd/system/创建任务文件navidrome.service
[Unit]
DescriptionNavidrome Music Server and Streamer compatible with Subsonic/Airsonic
Afterremote-fs.target network.target
AssertPathExists/var/lib/navidrome[Install]
WantedBymulti-user.target[Service]
Typesimple
ExecStart/opt/navidrome/navidrome --configfile /var/lib/navidrome/navidrome.toml
WorkingDirectory/var/lib/navidrome
TimeoutStopSec20
KillModeprocess
Restarton-failure# See https://www.freedesktop.org/software/systemd/man/systemd.exec.html
DevicePolicyclosed
NoNewPrivilegesyes
PrivateTmpyes
PrivateUsersyes
ProtectControlGroupsyes
ProtectKernelModulesyes
ProtectKernelTunablesyes
RestrictAddressFamiliesAF_UNIX AF_INET AF_INET6
RestrictNamespacesyes
RestrictRealtimeyes
SystemCallFilter~clock debug module mount obsolete reboot setuid swap
ReadWritePaths/var/lib/navidrome# You can uncomment the following line if youre not using the jukebox This
# will prevent navidrome from accessing any real (physical) devices
#PrivateDevicesyes# You can change the following line to strict instead of full if you dont
# want navidrome to be able to write anything on your filesystem outside of
# /var/lib/navidrome.
ProtectSystemfull# You can uncomment the following line if you dont have any media in /home/*.
# This will prevent navidrome from ever reading/writing anything there.
#ProtectHometrue# You can customize some Navidrome config options by setting environment variables here. Ex:
#EnvironmentND_BASEURL/navidrome注意如果你是按照上述步骤创建的文件夹或文件那么这个配置文件的内容无需修改 启动后台Navidrome服务 sudo systemctl daemon-reload
sudo systemctl start navidrome.service
sudo systemctl status navidrome.service开机自启可选 sudo systemctl enable navidrome.service测试 完成上述步骤后先进行内网访问初次访问需要添加一个用户账户和密码都是自定义的 进入之后可以修改中文右上角人像-personal-langguage-简体中文 完成以上步骤后现在就拥有了一个仅可在局域网下访问的音乐服务器接下来需要将其穿透至公网让你能够随时随地的听音乐。
二、服务穿透
此步骤只展示关键的客户端配置详细配置步骤见此博客
使用frp将树莓派穿透到外网 frp服务端配置 [common]
bind_port 7000
dashboard_port 7500
dashboard_user 1426061489
dashboard_pwd 20011021yzkyzkvhost_http_port 7002
vhost_https_port 7003
max_pool_count 50token xxx
tcp_mux truelog_file /opt/frps/log/frps.log
log_level info
log_max_days 3privilege_mode truefrp客户端配置 serverAddr xxx
serverPort 7000
auth.method token
auth.token xxx
loginFailExitfalse
[[proxies]]
name 远程音乐推流
type http
localIP 127.0.0.1
localPort 4533
customDomains [xxxx]
[log]
to /opt/frpc/log
level info该配置主要就是把服务端的7002端口映射到树莓派的4533端口4533端口就是Navidrome的默认端口,登录到frps面板7500端口也能看到映射的结果。 测试 使用服务器ip:7002端口访问成功访问到Navidrome这儿的音乐只要你将mp3文件上传至你navidrome.toml中配置的路径中它就会自动的读取。 现在在web端我们可以远程访问了但是本人平常使用手机听音乐的频率更高所以我们需要在移动端也能够访问到这些音乐。
三、音流配置
音流官网
现在手机基本上是64位的所以下载ARM64的就行了 下载完成后进行配置 选择Navidrome 填写服务器ip:frp配置的端口号 登录后进入首页就可以看到之前上传的歌曲 至此一步就完成了现在我将网易云常听的歌曲全部传到树莓派中然后音流中就会扫描大体的功能也和平常的音乐软件差不多主要是占空间很小很小几乎可以忽略不计。