Contents

Docker宝库:自建音乐库Navidrome

自己收藏音乐如何漂漂亮亮的整理在一起,做一个自己的音乐网站?又或是怕音乐App会员过期好歌就不能听了?不想看APP广告,只想要极简的音乐播放与歌单?

使用Navidrome搭建自己的音乐库,通过music TAG整理、编辑音乐的封面、歌词等标签信息。

安装Navidrome音乐库

控制台直接输入命令:

docker run -d \
--name navidrome \
--restart=unless-stopped \
--user $(id -u):$(id -g) \
-v /path/to/music:/music \
-v /path/to/data:/data \
-p 4533:4533 \
-e ND_LOGLEVEL=info \
-e ND_DEFAULTLANGUAGE=zh-Hans \
deluan/navidrome:latest
  • -v /path/to/music:/music /path/to/music 需要修改成音乐文件夹所在的位置
  • -v /path/to/data:/data /path/to/data 需要修改成程序的数据文件存放的位置,比方说/opt/navidrome
  • -p 4533:4533 前边的4533可以修改为想使用的端口号;右边的4533为内部端口号不能修改。 之后即可通过服务器IP:4533访问Navidrome网站。

注册账户后,如果不是中文界面,可在右上角点击头像,设置为中文界面。 /blog/电脑折腾/附件/玩NAS/Docker宝库:Navidrome自建音乐库1.png 这个网站能够展示出音乐文件夹中全部的音乐,并能自建歌单。

但是,展示的可能比较乱:有的音乐没有封面,有的同一专辑的歌曲被识别为多个专辑等。

Navidrome音乐折叠规则(有优先顺序)

  1. 如果专辑中的所有歌曲都由同一位专辑艺术家演唱,那么这些歌曲会被归为该专辑艺术家名下的一个专辑,折叠在一起。
  2. 如果专辑中的所有歌曲都由同一位艺术家演唱,且无专辑艺术家,那么这些歌曲会被归为该艺术家名下的一个专辑,折叠在一起。
  3. 如果这个专辑包含了不同的专辑艺术家信息,Navidrome会将这些歌曲识别为多个专辑分别折叠,每个专辑艺术家对应一个专辑,即使它们都属于同一实体专辑。
  4. 如果专辑中的歌曲由不同的艺术家演唱,且无专辑艺术家,Navidrome会将这些歌曲识别为多个专辑,分别折叠,每个艺术家对应一个专辑,即使它们都属于同一实体专辑。 PS: 如果Navidrome对专辑的折叠与预期的不一致,可以通过编辑元数据的“专辑”、“专辑艺术家”、“艺术家”标签将它们组合在一起。

专辑封面和艺术家图片的查找优先级

  • 对于艺术家图片,Navidrome会按照配置选项ArtistArtPriority指定的顺序查找艺术家图片,首先是艺术家文件夹中的artist.*图片,然后是专辑文件夹中的artist.*图片,最后是从外部服务(如Spotify)获取。
  • 对于专辑封面,Navidrome会按照配置选项CoverArtPriority指定的顺序查找,首先是专辑文件夹中的cover.*folder.*front.*图片,然后是媒体文件中嵌入的图片,接着是从外部服务(如Last.fm)获取的图片,最后是使用默认的封面占位图

因此,需要有一个刮削器,去给音乐文件归类、添加封面与歌词、修改专辑等。

安装music TAG 刮削器

控制台直接输入命令:

docker run -d -p 4534:8002 \
--name musictag \
-v /path/to/your/music:/app/media \
-v /path/to/your/config:/app/data \
--restart=always \
xhongc/music_tag_web:latest
  • /path/to/your/music:/app/media /path/to/your/music 需要修改成音乐文件夹所在的位置
  • -v /path/to/your/config:/app/data /path/to/your/config 需要修改成程序的数据文件存放的位置,比方说/opt/musictag
  • `-p 4534:8002 前边的4534可以修改为想使用的端口号;右边的8002为内部端口号不能修改。 之后即可通过服务器IP:4534访问MusicTag网站进行音乐管理。

/blog/电脑折腾/附件/玩NAS/Docker宝库:Navidrome自建音乐库2.png

单击一个音频文件,并点击中间面板音乐标题右边的放大镜图标,可以搜索网上的对应音乐,并在最右边的搜索结果中,点击对应的信息,可以替换本地音乐的相应信息。如封面、歌词、标题等。 勾选多个文件,可以进行批量修改信息等。

除此之外,在电脑端安装一个MusicTag软件,也可以方便的管理音乐文件。

最终,通过MusicTag整理后,在Navidrome中的音乐库如下图: /blog/电脑折腾/附件/玩NAS/Docker宝库:Navidrome自建音乐库3.png

自用备份: Navidrome:

docker run -d \
   --name navidrome \
   --restart=unless-stopped \
   --user $(id -u):$(id -g) \
   -v /srv/dev-disk-by-uuid-1ad0ebcf-0133-47df-af50-2cb54d10baa6/media/music:/music \
   -v /opt/navidrome:/data \
   -p 4533:4533 \
   -e ND_LOGLEVEL=info \
   -e ND_DEFAULTLANGUAGE=zh-Hans
   deluan/navidrome:latest

MusicTagWeb:

docker run --name musictag  \
-d -p 4534:8002 \
-v /srv/dev-disk-by-uuid-1ad0ebcf-0133-47df-af50-2cb54d10baa6/media/music:/app/media \
-v /opt/music_tag:/app/data \
--restart=always \
xhongc/music_tag_web:latest