NAS私人音乐库一键部署指南:打造高音质流媒体服务
厌倦了公共流媒体平台无处不在的广告、令人头疼的会员限制,以及被压缩的音质?是否渴望一个完全由自己掌控,能随时随地、无拘无束欣赏私人音乐收藏和高品质有声书的空间?今天,我们将手把手教你,如何利用家中现成的NAS设备,搭建一个功能强大、界面美观的专属音乐与有声书流媒体中心。这套方案不仅支持高保真音频输出和高效的实时转码,更提供了从网页到移动端的完整访问体验,让你真正成为自己数字音乐生活的主人。

方案核心:一站式私有媒体中心
本方案本质上是一个集媒体管理、智能转码与多端播放于一体的私有化解决方案。其核心优势在于对多种音频/视频格式的广泛兼容、高效的实时转码能力,以及经过精心设计的现代化用户界面。无论你是在家中通过Hi-Fi音响系统聆听无损交响乐,还是在通勤路上用手机收听引人入胜的有声书,它都能提供流畅、高品质的流媒体服务,完美契合个人或家庭对私有化数字媒体的所有想象。

一键部署:Docker Compose 快速上手
部署过程极其简便,我们推荐使用 Docker Compose 实现一键化部署。首先,在你的NAS上创建一个专属项目目录(例如 ~/daoliyu-music),然后在该目录下创建并编辑 docker-compose.yml 文件,将以下配置完整复制进去。
services:
postgres:
image: postgres:16-alpine
restart: unless-stopped
environment:
POSTGRES_DB: "daoliyu"
POSTGRES_USER: "daoliyu"
POSTGRES_PASSWORD: "daoliyupassword"
PGDATA: "/var/lib/postgresql/data/pgdata"
command:
- "postgres"
- "-c"
- "max_connections=200"
- "-c"
- "shared_buffers=256MB"
- "-c"
- "work_mem=32MB"
- "-c"
- "maintenance_work_mem=256MB"
- "-c"
- "checkpoint_completion_target=0.9"
- "-c"
- "wal_buffers=16MB"
- "-c"
- "port=5433"
healthcheck:
test: ["CMD-SHELL", "pg_isready -U daoliyu -d daoliyu -p 5433"]
interval: 10s
timeout: 5s
retries: 6
start_period: 30s
ports:
- "5433:5433"
volumes:
- ./postgres:/var/lib/postgresql/data
redis:
image: redis:7-alpine
restart: unless-stopped
depends_on:
postgres:
condition: service_started
command: ["redis-server", "--appendonly", "yes"]
volumes:
- ./redis:/data
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 5
backend:
image: msmkls/daoliyu-backend:0.1.7
restart: unless-stopped
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_started
environment:
NODE_ENV: production
APP_PORT: 4000
DATABASE_URL: "postgresql://daoliyu:daoliyupassword@postgres:5433/daoliyu?schema=public&connection_limit=25&pool_timeout=10&statement_timeout=60000&idle_in_transaction_session_timeout=60000"
VIDEO_TRANSCODE_CACHE: "/app/storage/transcoded/videos"
VIDEO_THUMBNAIL_CACHE: "/app/storage/thumbnails/videos"
REDIS_URL: "redis://redis:6379/0"
REGISTRATION_OPEN: "true"
LOG_LEVEL: "info"
volumes:
- ./storage:/app/storage
- ./media:/data/media
- ./audiobooks:/data/audiobooks
- ./music_videos:/data/music-videos
- ./playlists:/data/playlists
- ./plugins:/plugins
healthcheck:
test: ["CMD", "wget", "-qO-", "http://localhost:4000/health"]
interval: 30s
timeout: 5s
retries: 5
frontend:
image: msmkls/daoliyu-frontend:0.1.7
restart: unless-stopped
container_name: daoliyu-music-frontend
depends_on:
backend:
condition: service_started
ports:
- "5173:8080"
关键目录映射说明
配置文件中的 volumes 部分至关重要,它定义了你的媒体文件在宿主机上的存储位置。以下是各路径的详细说明:
./postgres:/var/lib/postgresql/data:用于持久化数据库文件,确保容器重启后数据不丢失。./redis:/data:用于持久化Redis缓存数据。./storage:/app/storage:存放应用生成的缓存文件,如转码后的视频和缩略图。./media:/data/media:这是你的核心音乐库目录,请将所有音乐文件(如MP3, FLAC, M4A, WAV等)存放于此。./audiobooks:/data/audiobooks:有声书专属目录,用于存放各类有声书文件。./music_videos:/data/music-videos:音乐视频目录,用于存放MV等视频内容。./playlists:/data/playlists:存放你创建的所有播放列表信息。./plugins:/plugins:预留目录,用于存放未来可能需要的自定义插件。
保存配置文件后,打开终端(或NAS的SSH会话),进入该文件所在目录,执行一条命令即可启动所有服务:
docker-compose up -d
稍等片刻,当所有容器的状态显示为 healthy 或 running 时,部署即告完成。
初次使用:登录与基础设置
-
访问管理界面:在电脑或手机的浏览器地址栏中,输入
http://你的NAS的IP地址:5173,即可看到登录界面。
-
修改默认凭证:首次登录请使用默认邮箱和密码(通常为
admin@example.com/password)。出于安全考虑,强烈建议在成功登录后,第一时间前往用户设置页面修改邮箱和密码。
-
熟悉主面板:登录后的主界面设计现代、配色舒适,所有核心功能模块——如媒体库、播放器、设置等——都清晰直观地呈现在眼前。

构建与管理你的私人音乐库
一切就绪后,让我们把重心放回音乐本身,开始构建属于你的数字音乐殿堂。
-
导入音乐文件:将你珍藏的音乐文件,直接拷贝或移动到之前配置的
./media目录下(它对应容器内的/data/media)。系统支持嵌套文件夹结构,会自动进行扫描。
-
触发媒体库扫描:系统通常设有定时自动扫描任务。若刚放入新文件,可进入“设置” -> “媒体库”页面,手动点击“扫描媒体库”来立即刷新目录。

- 常见问题:如果扫描后音乐未出现,请检查文件格式是否受支持,或尝试重新启动扫描任务。

- 高级管理:你可以在设置中添加多个不同的音乐源目录,便于对音乐进行精细化分类管理(例如“华语流行”、“古典珍藏”、“运动健身”等)。
- 常见问题:如果扫描后音乐未出现,请检查文件格式是否受支持,或尝试重新启动扫描任务。
-
开始播放:扫描完成后,所有音乐便会出现在“媒体库”中。点击任意歌曲,即可开始播放。屏幕底部的播放控制栏会实时显示当前播放信息。

-
创建与管理歌单:你可以多选歌曲,然后选择“添加到队列”进行临时连续播放,或者“添加到播放列表”来创建永久的个性化歌单,方便根据不同心情或场景快速调取音乐。

-
歌词同步显示:在播放界面,点击右下角的歌词图标,即可开启实时歌词显示功能,让你在聆听时也能跟上每一句歌词。

-
个性化音效调节:除了基础播放,系统还内置了音频均衡器。你可以根据所用耳机或音响的特性,或是个人听音偏好,自由调整不同频段的增益,获得更佳的听觉体验。

-
多维度浏览收藏:除了默认的歌曲列表视图,你还可以切换到“艺人”或“专辑”视图,以更传统、更直观的方式浏览和欣赏你的音乐收藏。

有声书的专门优化与管理
对于有声书爱好者,这套方案同样提供了贴心的专门优化,管理体验不输专业应用。
-
导入有声书:将整理好的有声书文件(建议在文件名或文件夹名中包含书名、作者等信息)放入
./audiobooks目录。
-
智能元数据识别:系统会尝试从文件标签(ID3 tags)和文件夹结构中自动读取元数据,智能识别书名、作者和章节信息,并生成清晰易读的目录结构。

-
专属播放体验:播放有声书时,界面会突出显示总章节数、当前播放进度与剩余时长,并且通常提供播放速度调节、睡眠定时器、章节跳转等实用功能,体验堪比专业有声书App。

随时随地,多端畅听
你的私人音乐库不应被束缚在单一设备上。本方案提供了灵活便捷的多端访问方式。
-
响应式网页端:前端采用响应式设计,这意味着你无需安装任何额外App,直接使用手机或平板电脑的浏览器访问管理地址,就能获得完美适配移动设备的操作界面,触控操作流畅自然。

-
原生移动客户端:为了获得最佳的原生体验(如后台播放、锁屏控件、通知栏控制等),官方提供了Android和iOS客户端。你可以在各自的应用商店搜索相关应用名称,或访问官网
cn.amcfy.com获取下载链接。
总结与深度体验评价
经过一段时间的实际部署与深度使用,这套方案的优点与待改进之处都较为清晰。
核心优势:
- 界面美观现代:无论是Web端还是移动端,其UI设计都相当出色,视觉体验赏心悦目。
- 功能全面整合:无缝统一管理音乐与有声书两大媒体类型,覆盖了从导入、分类、播放到音效调整的全流程。
- 生态完整闭环:配合官方移动客户端,构成了一个从服务器到终端的完整私有媒体生态,体验连贯。
可优化空间:
- 与一些更成熟的开源项目(如Navidrome)相比,在极端情况下的播放稳定性(如快速切歌时的短暂卡顿)、部分界面细节的适配(如窗口缩放响应)以及某些操作逻辑上,仍有提升和打磨的空间。
综合评分:
- 功能推荐指数:⭐⭐⭐ (定位清晰,音乐与有声书双修,功能潜力可观)
- 用户体验指数:⭐⭐⭐ (界面是最大亮点,多端覆盖完善,交互流畅)
- 部署友好指数:⭐⭐⭐ (基于Docker Compose,流程标准化,对新手友好)
总而言之,如果你正在寻找一个界面美观、能同时高效管理音乐和有声书、且部署过程不算复杂的NAS私有媒体方案,那么这套“道里鱼”方案无疑是一个值得你尝试的优秀选择。它让你能够以极低的成本和门槛,重新夺回对自己数字音乐生活的完全控制权与享受感。