Windows系统使用全功能的跨平台开源音乐服务器Navidrome搭建在线音乐库

文章目录

    • 前言
    • [1. 安装Docker](#1. 安装Docker)
    • [2. Docker镜像源添加方法](#2. Docker镜像源添加方法)
    • [3. 创建并启动Navidrome容器](#3. 创建并启动Navidrome容器)
    • [4. 公网远程访问本地Navidrome](#4. 公网远程访问本地Navidrome)
      • [4.1 内网穿透工具安装](#4.1 内网穿透工具安装)
      • [4.2 创建远程连接公网地址](#4.2 创建远程连接公网地址)
      • [4.3 使用固定公网地址远程访问](#4.3 使用固定公网地址远程访问)

前言

在数字时代,拥有一个个性化、便捷的音乐库成为了许多人的需求。本文将向大家介绍如何使用开源跨平台音乐服务器Navidrome,在本地Windows系统中通过Docker进行快速部署,并结合Cpolar内网穿透工具配置公网地址,实现随时随地远程访问本地存储的音乐。

Navidrome是一个全功能的跨平台开源音乐服务器应用,支持在macOS、Linux、Windows以及Docker等平台上运行。它能够传输常见的MP3、FLAC、WAV等音频格式,并允许用户通过Web界面或API进行音乐库的管理和访问。Navidrome提供了多种高级功能,包括:

  • 音乐库智能管理:自动扫描和整理你的音乐文件。
  • 智能播放列表:根据你的喜好生成个性化播放列表。
  • 用户权限控制:允许多个用户访问并设置不同的权限。
  • 多语言支持:提供多种语言界面,满足不同用户需求。

下面就来演示一下具体安装流程。

1. 安装Docker

本教程操作环境为Linux Ubuntu系统,在开始之前,我们需要先安装Docker与docker-compose。

在终端中执行下方命令安装docker:

shell 复制代码
sudo curl -fsSL https://github.com/tech-shrimp/docker_installer/releases/download/latest/linux.sh| bash -s docker --mirror Aliyun

如果上边命令中访问不了Github,可以使用Gitee的链接安装:

shell 复制代码
sudo curl -fsSL https://gitee.com/tech-shrimp/docker_installer/releases/download/latest/linux.sh| bash -s docker --mirror Aliyun

然后启动Docker即可

shell 复制代码
sudo systemctl start docker

下载docker-compose文件

shell 复制代码
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

给他一个执行权限

shell 复制代码
sudo chmod +x /usr/local/bin/docker-compose

查看是否安装成功

shell 复制代码
docker-compose -version

2. Docker镜像源添加方法

shell 复制代码
sudo docker pull deluan/navidrome

如因网络问题拉取不到镜像,

可尝试在终端执行 sudo nano /etc/docker/daemon.json

输入:

json 复制代码
{
"registry-mirrors": [
 "https://docker.m.daocloud.io",
 "https://docker.1panel.live"
]
}

保存退出

然后执行:

shell 复制代码
sudo systemctl restart docker

3. 创建并启动Navidrome容器

成功拉取镜像后,创建navidrome项目文件夹并编辑docker-compose.yml,内容如下:

yml 复制代码
version: "3"
services:
  navidrome:
    image: deluan/navidrome:latest
    ports:
      - "4533:4533" #自定义端口
    restart: unless-stopped
    environment:
      ND_SCANSCHEDULE: 1h
      ND_LOGLEVEL: info
      ND_SESSIONTIMEOUT: 24h
      ND_BASEURL: ""
    volumes:
      - "~/Music/data:/data"   #这里的~/Music/data为data数据真实路径
      - "~/Music:/music:ro"    #这里的~/Music为音乐文件真实路径

保存退出后,执行下方命令启动容器

shell 复制代码
sudo docker-compose up -d

启动成功后,在浏览器中输入localhost:4533,可以看到进入到了Navidrome的登录界面,需要设置一个用户名和密码。

登录后,点击界面右上角的头像图标进入个性化,可以设置语言为中文:

Navidrome会自动扫描你存放在上边设置的真实存储路径中的音乐,并自动将歌曲分类为各个专辑的形式展现:

4. 公网远程访问本地Navidrome

不过我们目前只能在本地访问刚刚使用docker部署的Navidrome音乐服务器,如果出门在外,想要随时远程访问在家中主机上部署的Navidrome听歌,应该怎么办呢?

我们可以使用cpolar内网穿透工具来实现无公网ip环境下的远程访问需求。

4.1 内网穿透工具安装

下面是安装cpolar步骤:

Cpolar官网地址: https://www.cpolar.com

使用一键脚本安装命令

shell 复制代码
curl https://get.cpolar.sh | sudo sh

安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)

shell 复制代码
sudo systemctl status cpolar

Cpolar安装和成功启动服务后,在浏览器上输入ubuntu主机IP加9200端口即:【http://localhost:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:

4.2 创建远程连接公网地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理------创建隧道:

  • 隧道名称:可自定义,本例使用了:navidrome 注意不要与已有的隧道名称重复
  • 协议:http
  • 本地地址:4533
  • 域名类型:随机域名
  • 地区:选择China VIP

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了两个公网地址,接下来就可以在其他电脑或手机平板(异地)上,使用任意一个地址在浏览器中访问即可。

如下图所示,成功实现使用公网地址异地远程访问本地部署的 Navidrome音乐服务器 !

小结

为了方便演示,我们在上边的操作过程中使用了cpolar生成的HTTP公网地址隧道,其公网地址是随机生成的。这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址是随机生成,这个地址在24小时内会发生随机变化,更适合于临时使用。

如果有长期远程访问本地搭建的Navidrome听音乐或者其他本地部署的服务的需求,但又不想每天重新配置公网地址,还想地址好看又好记,那我推荐大家选择使用固定的二级子域名方式来远程访问。

4.3 使用固定公网地址远程访问

登录cpolar官网,点击左侧的预留,选择保留二级子域名,地区选择China VIP,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称,这里我填写的是mynavid,大家也可以自定义喜欢的名称。

保留成功后复制保留成功的二级子域名的名称:mynavid,返回登录Cpolar web UI管理界面,点击左侧仪表盘的隧道管理------隧道列表,找到所要配置的隧道Navidrome,点击右侧的编辑:

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名:mynavid
  • 地区:选择China VIP

点击更新(注意,点击一次更新即可,不需要重复提交)

更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了固定的二级子域名名称的域名:

最后,我们使用任意一个固定公网地址在浏览器访问,可以看到访问成功,这样一个固定且永久不变的公网地址就设置好了,随时随地都可以远程访问本地部署的 Navidrome 音乐服务器来听音乐了!

通过简单的步骤,我们成功在Windows系统上部署了Navidrome,并使用Cpolar实现了远程访问。希望这篇教程对你有所帮助,祝你的生活更加丰富多彩!感谢您的观看,如果你也有远程访问本地部署服务的需求,不妨下载体验一下cpolar!

相关推荐
LCG元2 小时前
Windows实时内核驱动的数据捕获接口:高精度时钟与零拷贝的架构剖析
windows·架构
Code Warrior2 小时前
【Linux】基础开发工具(3)
linux·服务器
行者游学3 小时前
windows grpcurl
windows
NocoBase4 小时前
NocoBase v1.8.0 正式版发布
低代码·开源·资讯
goxingman4 小时前
Spring Data JPA基本方法调用规律
windows
夕泠爱吃糖4 小时前
Linux中的静态库和动态库
linux·运维·服务器
Vic101015 小时前
Java 开发笔记:多线程查询逻辑的抽象与优化
java·服务器·笔记
AllData公司负责人6 小时前
实时开发IDE部署指南
大数据·ide·开源
moppol6 小时前
探索下一代云存储技术:对象存储、文件存储与块存储的区别与选择
服务器
ZeroNews内网穿透7 小时前
服装零售企业跨区域运营难题破解方案
java·大数据·运维·服务器·数据库·tcp/ip·零售