Auto-sync: wiki-ingest 3 sources (2026-04-16)
This commit is contained in:
69
wiki/sources/用Docker中安装Navidrome.md
Normal file
69
wiki/sources/用Docker中安装Navidrome.md
Normal file
@@ -0,0 +1,69 @@
|
||||
---
|
||||
title: "用Docker中安装Navidrome"
|
||||
type: source
|
||||
tags: [docker, music, navidrome, synology, nas]
|
||||
date: 2026-04-15
|
||||
---
|
||||
|
||||
## Source File
|
||||
- [[raw/Home Office/用Docker中安装Navidrome.md]]
|
||||
|
||||
## Summary
|
||||
- 核心主题:Synology NAS Docker 部署 Navidrome 开源音乐服务器
|
||||
- 问题域:自托管音乐流媒体服务搭建,支持多客户端访问和转码
|
||||
- 方法/机制:docker-compose 定义服务,指定 UID/GID 用户映射,音乐目录只读挂载,数据目录持久化
|
||||
- 结论/价值:获得私有 Spotify 替代品,完全掌控音乐数据和流媒体服务
|
||||
|
||||
## Key Claims
|
||||
- Navidrome 音乐目录以只读(:ro)方式挂载,防止容器误操作损坏原始音乐文件
|
||||
- ND_AUTOTRANSCODEDOWNLOAD=true 使 Navidrome 根据客户端能力自动下载合适格式
|
||||
- ND_TRANSCODINGCACHESIZE=200MB 限制转码缓存保护 NAS 磁盘空间
|
||||
- 容器以非 root 用户(1026:100)运行,符合最小权限原则
|
||||
|
||||
## Key Quotes
|
||||
> "ND_LOGLEVEL=info — 开启详细日志,便于排查流媒体传输问题" — 故障排查配置
|
||||
> "ND_ENABLETRANSCODINGCONFIG=true — 启用转码配置界面" — 管理接口配置
|
||||
> "user: "1026:100" — 以指定 UID/GID 用户身份运行容器" — 安全加固配置
|
||||
|
||||
## Key Concepts
|
||||
- [[Navidrome]]:开源 Web UI 音乐播放器,支持 Subsonic API,兼容绝大多数音乐客户端
|
||||
- [[音乐流媒体服务器]]:将本地音乐库通过 HTTP 流媒体协议提供给多设备客户端
|
||||
- [[Transcoding(转码)]]:根据客户端能力动态转换音频格式(如 FLAC → MP3 320kbps)
|
||||
- [[只读挂载]]::ro 后缀保护原始数据,容器只能读取不能写入
|
||||
- [[Subsonic API]]:开源音乐流媒体协议标准,众多音乐 App 均兼容此协议
|
||||
|
||||
## Key Entities
|
||||
- [[Synology NAS]]:硬件平台(192.168.3.17),Docker 宿主机
|
||||
- [[Docker]]:容器化平台,运行 Navidrome 服务
|
||||
- [[deluan/navidrome]]:Navidrome 官方 Docker 镜像
|
||||
|
||||
## Connections
|
||||
- [[用Docker中安装Navidrome]] ← hosted_on ← [[Synology NAS]]
|
||||
- [[用Docker中安装Navidrome]] ← managed_by ← [[Docker]]
|
||||
|
||||
## Navidrome Docker Compose 配置
|
||||
```yaml
|
||||
version: '3.8'
|
||||
services:
|
||||
navidrome:
|
||||
image: deluan/navidrome:latest
|
||||
container_name: navidrome
|
||||
user: "1026:100"
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "4533:4533"
|
||||
volumes:
|
||||
- /volume1/music:/music:ro"
|
||||
- /volume1/docker/navidrome/data:/data
|
||||
environment:
|
||||
- ND_LOGLEVEL=info
|
||||
- ND_ENABLETRANSCODINGCONFIG=true
|
||||
- ND_AUTOTRANSCODEDOWNLOAD=true
|
||||
- ND_TRANSCODINGCACHESIZE=200MB
|
||||
```
|
||||
|
||||
## Contradictions
|
||||
|
||||
## Reference
|
||||
- Navidrome Doc: https://www.navidrome.org/docs/
|
||||
- Navidrome FAQ: https://www.navidrome.org/docs/faq/
|
||||
Reference in New Issue
Block a user