Docker系列 基于navidrome搭建个人音乐库

一、介绍

Navidrome是一个开源的基于网络的音乐收藏和流媒体服务器,它可以通过Web界面或API进行管理和访问,支持多种音频格式和多种平台,包括Windows、Linux、macOS等。

官网介绍:https://www.navidrome.org/docs/overview/

Navidrome can be used as a standalone server, that allows you to browse and listen to your music collection using a web browser.

It can also work as a lightweight Subsonic-API compatible server, that can be used with any Subsonic compatible client.

二、安装

仍然使用docker进行部署。官方资料:https://www.navidrome.org/docs/installation/docker/

docker-compose配置文件:

version: "3"
services:
  navidrome:
    image: deluan/navidrome:develop
    # should be owner of volumes
    user: 1000:1000
    ports:
      - "4533:4533"
    restart: unless-stopped
    environment:
      # Optional: put your config options customization here. Examples:
      ND_SCANSCHEDULE: 1h
      ND_LOGLEVEL: info  
      ND_SESSIONTIMEOUT: 24h
      # Base URL (only the path part) to configure Navidrome behind a proxy (ex: /music)
      ND_BASEURL: ""
    volumes:
      - "./data:/data"
	  # 音频文件所在目录
      - "/mnt/hhd/archive_2/music:/music:ro"

需要修改的配置:

user:容器运行用户,需要和歌曲目录属主一样,或者有歌曲目录的访问权限。

volumes:容器映射的卷,/data为app运行的数据目录,/music为歌曲目录,按照自己的目录配置即可。

三、使用

1、启动容器

docker-compose up -d 启动容器,网页登录http://[ip]:4533,即可进入服务,如下图所示:

2、开始使用

使用前需要创建一个管理用户。在网页中输入用户密码,点击“CREATE ADMIN”后创建用户,创建好用户后会自动登录到首页。如果已经存放了歌曲文件,登录首页后就会显示歌曲列表(如下图所示),点击歌曲文件即可播放。

官方资料:https://www.navidrome.org/docs/getting-started/

3、其他设置

(1)设置成中文

可以通过配置docker环境变量ND_DEFAULTLANGUAGE设置默认语言,也可以通过页面设置(网页设置仅真的单个用户有效)

(2)更新歌曲

增加和删除歌曲后,点击"刷新",即可更新歌曲。

(3)音乐标签信息

收听音乐时,我们可以看到有些歌曲无封面或者歌曲信息显示乱码,是音频文件无歌曲信息或者信息不对导致的,需要额外对音频文件进行编辑。

这里推荐一个大佬的工具【MusicTag】,可以匹配网易云、QQ音乐、酷狗、iTunes的音乐信息,也可以手动编辑歌曲信息。当然也可以搜索歌词。

MusicTag:https://www.cnblogs.com/vinlxc/p/11347744.html

将歌曲信息补齐后:

(4)客户端

除了网页登录,还可以使用客户端播放音乐。客户端的使用方法基本相同,只要配置好服务器地址、账户、密码后就可以使用。

介绍一下我在各平台使用的客户端,iPhone上我使用的是substreamer,Windows上我使用的是Sonixd,安卓上使用的是Ultrasonic,仅供参考,大家可以根据自己情况使用。

substreamer:

Sonixd:

可以在github上下载安装程序:https://github.com/jeffvli/sonixd/releases

Ultrasonic:

Apps
Besides its own Web UI, Navidrome should be compatible with all Subsonic > > clients. The following clients are tested and confirmed to work properly:

iOS: play:Sub, substreamer, Amperfy and iSub
Android: DSub, Subtracks, substreamer, Symfonium and Ultrasonic
Web: Feishin, Thunderdrome, Airsonic Refix, Subplayer, Aurial, Jamstash and > Subfire
Desktop: Sonixd (Windows/Linux/macOS), Feishin (Linux/macOS), Sublime Music (Linux), Supersonic (Windows/Linux/macOS) and Submariner (macOS)
CLI: Jellycli (Windows/Linux) and STMP (Linux/macOS)
Connected Speakers:
Sonos: bonob
Alexa: AskSonic
Other:
Subsonic Kodi Plugin
Navidrome Kodi Plugin
HTTPDirFS
upmpdcli: expose Navidrome as a UPnP/DLNA media library. See the discussion.
For more options, look at the list of clients maintained by the Airsonic project.

四、小结

至此,音乐库已经搭建完成。手机电脑都可以听到自己想听的歌曲,再也不用担心歌曲灰掉了。

不过还是有一些小问题没有解决的,比如客户端没有播放全部的功能等,需要后面使用中在慢慢摸索了。

消息盒子

# 暂无消息 #

只显示最新10条未读和已读信息