--- title: "Navidrome" type: entity aliases: [] tags: [music, media-server, self-hosted, open-source] --- # Navidrome ## Basic Info - **Type**: Entity / Product / Open-source Project - **Description**: 开源音乐流媒体服务器,支持 Subsonic API 协议,可通过网页端或移动客户端访问个人音乐库 - **Author**: Deluan - **Repository**: github.com/navidrome/navidrome - **License**: GPL v3 ## Aliases - Navidrome - deluan/navidrome(Docker 镜像名) ## Key Capabilities 1. **Subsonic API 兼容** — 与 Subsonic 协议兼容的客户端均可使用(Jellyfin/Subsonic 客户端通用) 2. **网页播放器** — 内置响应式 Web UI,支持播放列表、专辑浏览、搜索 3. **移动端支持** — 支持 DSub、Substreamer、Avanté 等 Subsonic 客户端 4. **转码支持** — 按客户端网络情况自动转码为合适码率,节省带宽 5. **元数据扫描** — 自动从音乐文件中读取 ID3 标签、封面信息 6. **轻量部署** — 单 Docker 容器运行,最低 512MB 内存即可运行 ## Configuration Highlights (Docker Compose) ```yaml image: deluan/navidrome:latest user: "1026:100" # 以非 root 用户运行 ports: - "4533:4533" volumes: - /volume1/music:/music:ro # 只读挂载音乐目录 - /volume1/docker/navidrome/data:/data # 数据目录 environment: - ND_LOGLEVEL=info - ND_ENABLETRANSCODINGCONFIG=true # 启用转码配置 UI - ND_AUTOTRANSCODEDOWNLOAD=true # 启用自动转码下载 - ND_TRANSCODINGCACHESIZE=200MB # 转码缓存上限 200MB ``` ## Key Design Decisions - **只读音乐挂载(`:ro`)** — 防止容器误操作修改原始音乐文件 - **非 root 用户运行** — 提升容器安全性,UID/GID 与宿主机用户对应 - **转码缓存限制** — 200MB 上限防止磁盘空间被缓存占满 - **端口 4533** — Navidrome 默认端口,局域网访问地址:`http://:4533` ## Related Entities - [[Jellyfin]] — 视频媒体服务器,架构类似但服务视频内容 - [[群晖 NAS]] — Navidrome 常见部署环境,音乐文件的存储位置 - [[Docker-Image]] — Navidrome 的部署方式 - [[Docker Compose]] — Navidrome 的配置管理方式 - [[Deluan/Navidrome]] — 官方 Docker 镜像发布者 ## Source - [[用docker中安装navidrome]] — Navidrome Docker 部署实战笔记