Auto-sync: 2026-04-26 20:02

This commit is contained in:
2026-04-26 20:02:45 +08:00
parent d42bc16120
commit b7d9d0f5d1
54 changed files with 3196 additions and 3021 deletions

View File

@@ -1,49 +1,47 @@
---
title: "用Docker中安装Navidrome"
type: source
tags: [docker, music, navidrome]
date: 2026-04-14
---
## Source File
- [[raw/Home Office/用Docker中安装Navidrome.md]]
## Summary (用中文描述)
- 核心主题:通过 Docker Compose 在 NAS/服务器上部署 Navidrome 音乐服务器
- 问题域:家庭音乐媒体库管理、跨设备音乐播放、流媒体服务自托管
- 方法/机制:使用 Docker Compose YAML 配置,挂载 NAS 音乐目录与数据目录,设置环境变量启用转码功能,以非 root 用户运行容器
- 结论/价值:Navidrome 提供开源、轻量、功能完整的自托管音乐流媒体解决方案,适合家庭媒体中心场景
## Key Claims (用中文描述)
- Navidrome 容器通过 `user: "1026:100"` 以非 root 用户身份运行,确保宿主机文件系统权限安全
- 音乐目录以只读模式(`:ro`)挂载,防止容器误操作修改原始音乐文件
- 转码缓存限制为 200MB`ND_TRANSCODINGCACHESIZE=200MB`),保护磁盘空间
- 启用自动转码下载功能(`ND_AUTOTRANSCODEDOWNLOAD=true`),客户端按需获取合适音质的音乐
## Key Quotes
> `ports: - "4533:4533"` — 容器端口映射到宿主机 4533供局域网访问
> `volumes: - /volume1/music:/music:ro` — 将 NAS 音乐目录只读挂载到容器内 /music 路径
> `ND_ENABLETRANSCODINGCONFIG=true` — 在 Web UI 中启用转码配置界面
## Key Concepts
- [[Docker Compose]]:多容器 Docker 应用的声明式配置格式
- [[媒体服务器]]:自托管音乐/视频流媒体服务
- [[转码缓存]]:按需转码并缓存,保护计算资源与磁盘空间
- [[只读挂载]]:保护原始文件不被容器修改
## Key Entities
- [[Navidrome]]开源音乐流媒体服务器Subsonic API 兼容,支持网页与移动客户端
- [[群晖 NAS]]Synology NASNAS 存储设备,音乐文件的宿主机
- [[Deluan/Navidrome]]Navidrome 官方 Docker 镜像发布者
## Connections
- [[群晖 NAS]] ← 存储音乐文件并运行 Docker ← [[Navidrome]]
- [[Jellyfin]] ← 对标竞品媒体服务器 ← [[Navidrome]]
- [[Docker-Image]] ← 基础技术栈 ← [[Navidrome]]
## Contradictions
- 无已知冲突
## Related Sources
- [[用docker安装jellyfin]] — Jellyfin 视频媒体服务器部署笔记,架构类似但服务对象不同(视频 vs 音乐)
- [[家庭网络环境概览]] — 家庭服务器整体网络架构说明
---
title: "用Docker中安装Navidrome"
type: source
tags: [docker, music, navidrome]
date: 2026-04-14
---
## Source File
- [[raw/Home Office/用Docker中安装Navidrome.md]]
## Summary用中文描述
- 核心主题:通过 Docker Compose 在群晖 NAS 上部署 Navidrome 开源音乐流媒体服务器
- 问题域:家庭音乐库、个人媒体服务、NAS 多媒体服务
- 方法/机制:使用 deluan/navidrome:latest 官方镜像,通过 Docker Compose YAML 配置服务;以只读方式挂载 /volume1/music 音乐目录,/volume1/docker/navidrome/data 存储应用数据;配置 ND_LOGLEVEL=info 详细日志、ND_ENABLETRANSCODINGCONFIG 启用转码配置界面、ND_AUTOTRANSCODEDOWNLOAD 自动根据客户端需求转码下载、ND_TRANSCODINGCACHESIZE=200MB 限制转码缓存大小
- 结论/价值:构建家庭音乐流媒体服务,支持多客户端自适应转码播放,实现"音乐文件存储 → 流媒体播放"完整工作流
## Key Claims用中文描述
- Navidrome 官方镜像 deluan/navidrome:latest 提供开箱即用的音乐服务器功能
- 群晖 NAS 使用 `user: "1026:100"` 固定 UID:GID可避免容器内文件权限问题
- 音乐目录 `/volume1/music:/music:ro` 以只读(:ro方式挂载确保原始音乐文件安全不被篡改
- 转码缓存限制为 200MB保护 NAS 磁盘空间
- ND_AUTOTRANSCODEDOWNLOAD=true 使 Navidrome 能根据客户端能力自动转码并下载
## Key Quotes
> "开启详细日志,便于排查流媒体传输问题" — 日志级别设置为 info 是排查 Docker 容器内 Navidrome 流媒体传输问题的基础
> "限制转码缓存大小,保护磁盘空间" — ND_TRANSCODINGCACHESIZE=200MB 是 NAS 存储空间管理的重要配置
## Key Concepts
- [[Docker 媒体服务器]]:通过 Docker 容器部署的流媒体服务Navidrome 和 Jellyfin 均属此类
- [[音乐流媒体]]通过网络协议HTTP/WebDAV向客户端传输音频内容的服务
- [[音频转码]]将音乐文件转换为客户端支持的格式Navidrome 在服务端处理)
- [[NAS 多媒体服务]]:在 NAS 设备上运行的多媒体服务器(视频/音乐/照片等)
## Key Entities
- [[Navidrome]]:开源音乐流媒体服务器,支持 Subsonic API,本文部署的目标服务
- [[deluan/navidrome]]Navidrome 官方 Docker 镜像,由项目维护者 deluan 提供
- [[群晖 NAS]]Synology NASNAS 设备类型,本文 Navidrome 的宿主机,提供 /volume1/docker 和 /volume1/music 存储路径
## Connections
- [[Jellyfin]] ← 对标竞品 ← [[Navidrome]] — Jellyfin 服务视频Navidrome 服务音乐,同属家庭媒体中心
- [[用docker安装jellyfin]] ← 共用宿主机 ← [[用docker中安装Navidrome]] — 共享群晖 NAS Docker 环境和存储基础设施
- [[群晖 NAS]] ← 宿主机 ← [[用docker中安装Navidrome]] — NAS 提供 Docker 环境和音乐文件存储
- [[Transmission]] ← 下载端 ← [[Navidrome]](播放端)— 下载端传输→整理音乐文件→Navidrome 播放
- [[Docker卷]] ← 数据存储 ← [[Navidrome]] — /data 目录持久化配置和缓存
## Contradictions
- 无已知冲突