如果你是一位音乐爱好者,且喜欢通过自己的方式管理音乐库,那么自建音乐服务是一个不错的选择。Navidrome是一款轻量级、开源的音乐流媒体服务器,支持Subsonic API,可以让你随时随地访问自己的音乐库。在本教程中,我们将结合fnOS,手把手教你如何搭建Navidrome音乐服务。

什么是Navidrome

Navidrome是一款免费开源的音乐流媒体服务器,它具有以下特点:

  • 支持多种音频格式(MP3FLACAAC等)。
  • 支持Subsonic API,可以与多种客户端兼容。
  • 浏览器友好的界面,支持响应式设计。
  • 支持用户管理和多用户播放。

通过Navidrome,你可以打造属于自己的私人音乐流媒体服务,无需依赖第三方。

此外,music_tag_web项目是一款非常实用的音乐标签编辑器,它可以帮助你轻松编辑歌曲的各种信息,比如标题、专辑、艺术家、歌词以及封面等。这款程序支持多种音频格式,包括FLACAPEWAVAIFFWVTTAMP3M4AOGGMPCOPUSWMADSFDFFMP4等,让你能够更加方便地管理和个性化你的音乐库。

为什么选择fnos

fnOS是一款轻量级的NAS系统,专注于提供可靠的容器化支持和高效的资源管理。选择fnOS搭建Navidrome,具有以下优势:

  • 简化的环境配置。
  • 高性能容器化支持。
  • 良好的社区支持。

安装步骤

编写Dokcer Compose文件

version: '3'
services:
  music-tag:
    image: xhongc/music_tag_web:latest
    container_name: music-tag-web
    ports:
      - "8002:8001"
    volumes:
      - "/vol1/1000/music/:/app/media:rw"
      - "/vol1/@appconf/music_tag_web/config:/app/data"
    command: /start
    restart: always
  navidrome:
    image: deluan/navidrome:latest
    container_name: navidrome
    user: 1000:1000 # should be owner of volumes
    ports:
      - "4533:4533"
    restart: unless-stopped
    environment:
      ND_SCANSCHEDULE: 1h
      ND_LOGLEVEL: info  
      ND_SESSIONTIMEOUT: 24h
      ND_BASEURL: ""
    volumes:
      - "/vol1/@appconf/navidrome/data/:/data"
      - "/vol1/1000/music/:/music:rw"

在这个YAML文件中,我们配置了两个容器:一个是用于提供流媒体服务的Navidrome,另一个是负责封面和专辑信息抓取的music-tag-web。需要注意的是,这两个容器都共享同一个音乐文件目录 /vol1/1000/music/,这个目录就是用来存放你的音乐文件的地方。

部署应用

在飞牛系统上,打开Docker容器服务,点击Compose,然后,点击新建项目,如下图所示

当弹出界面时,请您先输入项目的名称,然后选择YAML文件希望保存的位置。接下来,只需要将刚才准备好的YAML文件内容复制到指定区域就可以了。整个过程可以参考下图所示的操作步骤哦!

等待几分钟后,部署成功后,就会出现如下界面:

通过IP加端口方式即可访问到Navidrome,第一次登陆需要设置用户和密码,设置成功后,重新登陆如下图所示:

我这个是音乐目录存在文件,同时music-tag-web也帮我把这些音乐刮削到对应的专辑和封面信息。

客户端

我们可以使用FRPC技术把部署在内网的应用发布到公网,实现随时随地的畅听音乐。客户端方面,我们可以使用国人开发的音流软件连接自己专属的音乐服务器。

音流是一款NAS音乐播放器,可以连接到您部署在NAS上的音乐服务1,能让您在不同平台2享受一致的音乐盛宴。

总结

通过本文的教程,我们利用fnOSDocker成功搭建了Navidrome音乐服务。无论是组织音乐库还是随时随地播放音乐,Navidrome都可以提供一个简单、高效的解决方案。赶快行动起来,打造属于你的音乐世界吧!

推荐阅读