【Navidrome 开源音乐服务器】手把手教你打造属于自己的音乐播放器随时随地想听就听
目录
1. 前言
2. Navidrome网站搭建
2.1 Navidrome下载和安装
2.1.1 安装并添加ffmpeg
2.1.2下载并配置Navidrome
2.1.3 添加Navidrome到系统服务
2.2. Navidrome网页测试
3. 本地网页发布
3.1 cpolar的安装和注册
3.2 Cpolar云端设置
3.3 Cpolar本地设置
4. 公网访问测试
5. 结语
1. 前言
不知从何时开始,我们能用的音乐软件越来越少,笔者使用小米手机很久了,自从小米手机的自带音乐播放器变成了QQ音乐,笔者手机里很多的音乐就无法再自由畅听,要求付费加会员听歌,不然就得忍受被剪切的试听版。最重要的,是不让播放自行下载的音乐!!!这就很让人头疼。为了逃避这种情况,笔者打算使用Cpolar内网穿透+ Navidrome方案,自建一个私人音乐服务器,以便能再次自由享受音乐。
2. Navidrome网站搭建
Navidrome是一个开源的音乐服务器,也可以轻松的作为web界面的独立音乐服务器使用,也就意味着我们可以在手机、平板或者其他电脑上访问。只要安装在本地电脑中,并搭配内网穿透软件cpolar,就能让我们在任何地方都能访问到家里电脑上的Navidrome网页,并享受音乐带来的放松。
需要注意的是,由于Navidrome并不依赖网页运行环境,因此其安装过程并不是通常所见的网站安装流程。
2.1 Navidrome下载和安装
2.1.1 安装并添加ffmpeg
首先,我们需要下载并安装ffmpeg,毕竟Navidrome是基于其运行的,因此需要安装一个ffmpeg(很多音乐视频软件都依托其运行)。只要访问ffmpeg官网(ffmpeg.org),就能找到下载。
接着,将ffmpeg加入path环境变量。要记得在环境变量中带上bin文件夹,这样我们就能在任意cmd窗口中调用ffmpeg.exe。
2.1.2下载并配置Navidrome
接着,我们访问Navidrome的官网(www.navidrome.org),点击官网的下载按钮,进入安装指导页面。在这个页面,我们可以看到不同系统中安装Navidrome的指导。很多开源软件都会放在github(Navidrome也不例外),因此其下载页面会转到github。
笔者使用的是windows系统,因此选择Windows版本下载。
完成Navidrome的下载后,将其解压到打算安装的位置,笔者这里将其放在D盘的program file64文件夹下方便管理。根据Navidrome的安装指导,我们还需要修改Navidrome的配置文件,让Navidrome知道应该去哪个文件夹里寻找音乐文件。
Navidrome的配置文件为navidrome.toml,通常放在navidrome.exe同一文件夹下。如果没有这个文件,可以新建一个(新建文本文件,并将后缀名改为.toml),并将如下命令行添加到这个文件中。
# This is just an example! Please see available options to customize Navidrome for your needs at
# https://www.navidrome.org/docs/usage/configuration-options/#available-options
LogLevel = 'DEBUG'
ScanSchedule = '@every 24h'
TranscodingCacheSize = '150MiB'
# IMPORTANT: Use single quotes for paths in Windows
MusicFolder = 'D:\Music'
# Set this to the path of your ffmpeg executable
FFmpegPath = ' D:\Program Files\ffmpegfull\ffmpegfull\bin\ffmpeg.exe'
在这些命令行中,有一些参数是根据实际情况进行修改的,包括MusicFolder = 'D:\Music'和FFmpegPath = ' D:\Program Files\ffmpegfull\ffmpegfull\bin\ffmpeg.exe'。
更详细的配置参数注释,可以参阅navidrome官网的注释页面:Navidrome Configuration Options | Navidrome
完成配置文件的编辑后,就可以在cmd窗口下,运行navidrome.exe文件(双击这个.exe文件不管用,必须在命令行窗口下运行),正式安装Navidrome。
安装过程中,可能会出现网络安全询问,我们只要选择允许访问即可。
命令行程序运行完成后,不要关闭cmd窗口,我们尝试访问navidrome网页,试试看是否安装成功。在浏览器地址栏中输入localhost:4533(4533为navidrome的默认输出端口)。只要显示出navidrome登录界面,就说明我们的设置成功。登录界面可以直接设置登录名和密码,要记得自己输入的用户信息,不然可能导致之后无法登录。
需要注意的是,这时我们的navidrome还没有加入Windows系统服务中,只要关闭了cmd窗口,就无法访问navidrome页面。因此下一步,我们要将navidrome加入Windows服务中。
2.1.3 添加Navidrome到系统服务
为了随时能访问navidrome网页,而不必时时刻刻开着cmd窗口,我们需要将navidrome加入Windows的系统服务中。根据navidrome官网的建议,可以使用Shawl、NSSM和WinSW将navidrome加入启动目录。这里笔者根据官网指引使用NSSM进行设置。
下载好NSSM压缩包后,解压并在win64文件夹中找到.exe安装文件,笔者使用的是64位版本Windows,因此选择win64安装包。
由于NSSM是绿色程序,不必进行安装,因此直接在cmd中运行即可。即在win64文件夹的搜索栏中输入cmd,在此路径下打开cmd程序,接着输入,命令
nssm install
就能打开nssm的图形化界面。
在nssm的图形化界面中,找到Path栏位,将navidrome.exe输入其中(通过Path栏位后的“...”按钮选择路径),并在下方的service name输入名称进行分辨。再点击install service确定添加服务。
最后,我们打开服务页面(可以在搜索栏中直接输入“服务”,并在搜索结果中打开),启动在Nssm中设置好的服务项目(这个例子中,是笔者设置的navid服务项)。
2.2. Navidrome网页测试
在Windows服务中添加Navidrome后,就能不启动cmd窗口,也能打开Navidrome网页。同样的,为了测试Navidrome是否能正常运行,我们在浏览器地址栏中输入localhost:4533,尝试打开Navidrome的主页面。只要能正常显示,就说明我们已经成功的在本地电脑上安装好了Navidrome音乐网站。
3. 本地网页发布
经过以上步骤,我们成功安装了Navidrome音乐网站服务器,接下来我们就可以使用cpolar内网穿透,创建连接本地Navidrome页面的公共互联网地址,让我们能在公共互联网上访问到局域网电脑上的Navidrome网页。
cpolar官网:cpolar - 安全的内网穿透工具
3.1 cpolar的安装和注册
完成Navidrome音乐网站在本地电脑上的安装后,就可以转入cpolar的安装。相比Navidrome音乐网站,cpolar的安装要简单很多。我们直接访问cpolar的官网页面,并找到下载按钮。
笔者使用的是Windows操作系统,因此选择Windows版本进行下载。
Cpolar下载完成后,将下载的文件解压,双击解压后的.msi文件执行自动安装程序,一路“Next”就能完成安装。
cpolar会为为每个独立用户创建专属的数据隧道,并以用户密码和token码保证每位用户的数据安全。因此在使用cpolar之前,需要进行用户注册。
新注册的程序非常简单,只要在cpolar主页右上角点击“用户注册”,在注册页面填入必要信息,就能完成注册。
3.2 Cpolar云端设置
由于cpolar内网穿透免费版的数据隧道每24小时重置一次。笔者不想每天进行Navidrome音乐网页的连接设置,因此笔者将cpolar升级至vip版,获得能长期稳定存在的内网穿透数据隧道。
要创建能够长期稳定存在的内网穿透隧道,需要分为两步走。首先登录cpolar的官网,并在用户主页面左侧找到预留按钮,并点击进入cpolar的数据隧道预留页面。在这里为本地Navidrome网页生成一个公共互联网地址(也可以看做数据隧道的入口),此时这个地址没有连接本地的软件输出端口,因此也可以看做是空白数据隧道。
在预留页面,可以看到很多种可保留的数据隧道,因为Navidrome是web音乐服务器,因此我们选择保留二级子域名栏位。
在“保留二级子域名”栏位,必须进行几项信息的简单设置,创建独一无二的公共互联网地址,这些需要设置的信息为:
地区:服务器所在区域,就近选择即可; 二级域名:会最终出现在生成的公共互联网地址中,作为网络地址的标识之一; 描述:可以看做该数据隧道的描述,只要能与其他隧道区分开即可。
完成这几项设置后,就可以点击右侧的保留按钮,将这条数据隧道保留下来。
当然,如果这条数据隧道不打算再使用,还可以点击右侧的“x”将其轻松删除,节约宝贵的隧道名额。
3.3 Cpolar本地设置
在cpolar云端设置并保留空白隧道后,我们回到本地的cpolar客户端,将云端生成的空白数据隧道与本地的测试页面连接起来。
在本地打开并登录cpolar客户端(可以在浏览器中输入localhost:9200直接访问,也可以在开始菜单中点击cpolar客户端的快捷方式)。
点击客户端主界面左侧隧道管理项下的创建隧道按钮,进入本地隧道创建页面(如果要创建没24小时重置地址的临时数据隧道,可直接在此进行设置,不必再cpolar官网设置空白数据隧道)。
在这个页面,同样需要进行几项信息设置,这些信息设置包括:
1. 隧道名称 :可以看做cpolar本地的隧道信息注释,只要方便分辨即可; 2. 协议 :由于Navidrome音乐服务是网页形式,因此选择http协议; 3. 本地地址 :本地地址即为本地网站的输出端口号,而Navidrome默认输出端口为4533,因此这里也填入4533; 4. 域名类型 :由于笔者已经在cpolar云端预留了二级子域名的数据隧道,因此勾选“二级子域名”(如果预留的是自定义域名,则勾选自定义域名) 5. Sub Domain:填入预留的二级子域名,该例子中为“Navidromeweb”(注:如果创建的是临时数据隧道,则直接勾选“随机域名”,由cpolar客户端自行生成网络地址); 6. 地区 :与cpolar云端预留的信息一样,我们依照实际使用地填写即可;
完成这些设置后,就可以点击页面下方的创建按钮,就能将cpolar云端的空白数据隧道与本地的Navidrome音乐站连接起来,也就为我们提供了可以在公共互联网访问本地Navidrome音乐站的数据隧道,cpolar也会自动跳转至“隧道管理”项下的“隧道列表”页面。
在“隧道管理”项下的“隧道列表”页面,可以对这条数据隧道进行管理,包括开启、关闭或删除这条隧道,也可以点击“编辑”按钮,最这条数据隧道的信息进行修改。
4. 公网访问测试
我们可以点击左侧状态项下的在线隧道列表按钮,找到这个页面的公共互联网地址,将这个地址粘贴到浏览器中,就能看到本地Navidrome音乐站页面,建立属于自己的私人音乐站。
5. 结语
到这里,我们就完成了使用Cpolar+Navidrome,搭建私人音乐站的工作,虽然看着步骤很多很杂,但那主要是为大家详细展示每个步骤,实际操作起来只要十多分钟即可。不知大家发现没有,Navidrome音乐服务器搭建过程中,并没有涉及对apache、MySQL这些常见的网页运行环境的配置,而是全程安装Navidrome本身,这无疑大大降低了Navidrome音乐站的搭建难度,,并可以自有播放已下载的音乐。