1104 字
6 分钟
Docker部署Navidrome搭建本地音乐库

Docker部署Navidrome,搭建本地音乐库#

一、Navidrome是什么#

Navidrome 是什么呢?引用Navidrome官网的原话:

Navidrome is a self-hosted, open source music server and streamer. It gives you freedom to listen to your music collection from any browser or mobile device.
Navidrome 是一个自托管的开源音乐服务器和流媒体。它让您可以自由地从任何浏览器或移动设备收听您的音乐收藏。

Navidrome 是一个现代的音乐服务器,兼容所有的 Subsonic/Airsonic 客户端。
Navidrome 后端使用 Go 语言编写,前端基于 React,界面风格采用 Material UI,串流音乐的接口兼容 Subsonic ,所以支持 Subsonic 的客户端都可以使用。

二、Navidrome的特点#

  • 支持几乎所有音频格式,流式传输几乎任何可用的音频格式
  • 读取并使用元数据
  • 对合辑(各种艺术家专辑)和盒装(多碟专辑)的支持
  • 独立用户系统,每个用户都有自己的播放次数、播放列表、收藏夹
  • 系统资源占用极低,即使几十GB 几千首歌依然非常流畅
  • 开源,多平台,可在 macOS、Linux 和 Windows 上运行。还提供了 Docker 镜像
  • 可用于所有主要平台的二进制文件,包括 Raspberry Pi
  • 自动监控您的音乐库的更改、导入新文件和重新加载新元数据
  • 基于 Material UI 的主题化、现代和响应式 Web 界面
  • 与所有 Subsonic/Madsonic/Airsonic 客户端兼容,甚至还有 Kodi 的插件
  • 自带即时转码,可以为每个用户单独设置。支持 Opus 编码。
  • 界面集成各种语言

三、Navidrome的缺点#

  • 不支持在页面上传歌曲文件以及修改文件 Metadata
  • 不支持歌曲分享
  • 只支持内嵌的歌词显示且歌词显示只能悬浮一行显示

img

四、部署Navidrome#

1、docker-compose.yml#

services:
  navidrome:
    image: deluan/navidrome:latest
    container_name: navidrome
    ports:
      - 54533:4533 #左侧端口如有冲突,可随意修改
    volumes:
      - ~/data:/data #数据路径
      - ~/music:/music:ro  #音乐路径
    environment:
      #程序默认语言
      - ND_DEFAULTLANGUAGE=zh-Hans
      #启用GRAVATAR头像
      - ND_ENABLEGRAVATAR=true
      #启用转码,如需要关闭转码请设置为false
      - ND_ENABLETRANSCODINGCONFIG=true
      #设置从新浏览器登录时 UI 使用的默认主题
      - ND_DEFAULTTHEME=Light
      #更改登录页面中使用的背景图像
      #- ND_UILOGINBACKGROUNDURL=
      #在登录屏幕添加欢迎消息
      #- ND_UIWELCOMEMESSAGE='拾起光影,奏响记忆,让记忆在旋律中闪耀!'
      #SPOTIFY相关
      # - ND_SPOTIFY_ID=
      # - ND_SPOTIFY_SECRET=
      #LAST.FM相关
      # - ND_LASTFM_LANGUAGE=zh
      # - ND_LASTFM_APIKEY=
      # - ND_LASTFM_SECRET=
      #PROXY相关
      # - HTTP_PROXY=http://proxy:port
      # - HTTPS_PROXY=http://proxy:port
    restart: unless-stopped

2、docker run 部署#

docker run -d \
    --name navidrome \
    --restart always \
    --env ND_DEFAULTLANGUAGE=zh-Hans \
    --env ND_ENABLEGRAVATAR=true \
    --env ND_DEFAULTTHEME=Light \
    --env ND_ENABLETRANSCODINGCONFIG=true \
    --env ND_UIWELCOMEMESSAGE='拾起光影,奏响记忆,让记忆在旋律中闪耀!' \
    -v ~/data:/data \
    -v ~/music:/music:ro \
    -p 54533:4533 \
    --memory="512m" \
    deluan/navidrome:latest

3、拾光坞 NAS 部署#

1.下载镜像#

拾光坞客户端-容器服务-镜像商店-搜索navidrome,选择第一个星星最多的deluan/navidrome,导入镜像。
img

2.创建容器#

img

目录映射

  • /个人空间/docker_storage/navidrome : /data
  • /个人空间/Music : /music
    img

端口映射
4533 : 54533
img

点击创建,完成后启动容器即可。

仅展示基础功能创建,其他定制可选功能感兴趣可自行研究加上。

五、Navidrome Web访问#

http://{Your ip}:54533

记得改成你的设备内网ip地址,注意没有公网ip是只能局域网内访问哦。

首次使用需要设置管理员账号密码
img img

六、Subsonic API#

Subsonic API Wiki

七、Navidrome 对接第三方app#

如果不满意自带的web界面呢,可以使用第三方app访问。
Navidrome与所有 Subsonic/Madsonic/Airsonic 客户端兼容,甚至还有 Kodi 的插件。

比如 音流
「音流」是一款国人开发的音乐播放器,支持 Subsonic/Navidrome/Jellyfin/Emby/AudioStation,现已登录 Android、iOS,未来可能支持 Windows 和 tvOS 平台。音流采用 Flutter 开发,界面简洁美观,整体以透明和高斯模糊为主,布局类似于网易云音乐,上手基本没有门槛。你可以在音流官网获取 Android 安装包,或直接在 iOS App Store 搜索「音流」下载。
下载地址: https://www.aqzscn.cn/archives/stream-music-versions
win安装教程: https://aqzscn.cn/archives/stream-music-win
这里不过多介绍…
安装完成后直接打开选择链接Navidrome,输入Navidrome访问地址验证账号密码即可。
img img img img

音流这个界面就很舒服,同时也可以搭配拾光坞使用拾光穿透Navidrome端口映射出去,实现外网访问

Docker部署Navidrome搭建本地音乐库
https://imxizhen.asia/posts/docker/navidrome/
作者
imxizhen
发布于
2025-04-18
许可协议
CC BY-NC-SA 4.0