飞牛 NAS 装这个,20 分钟拥有自己的 Spotify
我有个朋友,买了飞牛 NAS 之后一直在问我,硬盘里的音乐怎么在手机上听。
他不是程序员,就是普通上班族,买 NAS 的原因很简单,不想把照片和文件放在别人的服务器上。音乐这块,他一直用网易云,但最近发现好几首收藏的歌被下架了,有点慌。
我跟他说,你硬盘里有音乐吗?
他说有,乱七八糟的,几千首,不知道从哪里拷来的。
我说,那你装一个 Swing Music 吧,装完你就有自己的 Spotify 了。
他问,难不难?
我说,你跟着我说的做,20分钟能跑起来。
这篇文章就是写给他的,也写给所有买了飞牛 NAS、硬盘里有音乐、但不知道怎么听的人。
Swing Music 是什么
一句话,它是一个跑在你自己 NAS 上的音乐播放服务。你把音乐文件放在 NAS 里,它帮你整理好、做成漂亮的界面,然后你在浏览器里打开,就跟用 Spotify 一样听歌。手机、电脑、平板,只要在同一个局域网里,都能用。
不需要花钱,不需要会写代码,不会有歌被下架。
Swing Music 艺术家页面截图,展示类 Spotify 的 UI 风格开始之前,先准备两件事
第一,飞牛 NAS 上要有一个存音乐的文件夹,比如 /vol1/1000/musicc,把你的 mp3、flac 之类的音乐文件放进去。如果还没整理,现在先建个文件夹,把音乐扔进去就行,不用分类,Swing Music 会帮你整理。

第二,飞牛 NAS 的 Docker 功能要是开着的。飞牛的系统里自带 Docker 管理界面,打开「应用中心」能找到,确认它在运行就好。

部署步骤:粘贴这段配置就行
打开飞牛的 Docker 管理界面,找到「Compose」这个入口。

新建一个项目,名字随便填,比如就叫 swingmusic。然后把下面这段配置粘贴进去:
services: swingmusic: image: ghcr.io/swingmx/swingmusic:latest container_name: swingmusic volumes: - /vol1/1000/music:/music - ./swingmusic/config:/config ports: - "1970:1970" restart: unless-stopped
这里有两个地方需要改一下。
/vol1/1000/music 换成你实际存音乐的路径。如果你的音乐放在 /vol2/1000/music,就改成 /vol2/1000/music。不确定路径的话,在飞牛的文件管理器里找到那个文件夹,地址栏里显示的就是路径。
./swingmusic/config 这个是用来存 Swing Music 配置文件的,建议保持这个路径,飞牛会自动帮你创建这个文件夹。

改好之后,点部署或者启动,等它把镜像下载完,大概需要一两分钟,取决于你的网速。

初始设置
看到容器状态变成「运行中」之后,打开浏览器,地址栏输入:
http://你的NAS的IP地址:1970
NAS 的 IP 地址在飞牛系统设置的「网络设置」里能看到 IPv4地址,通常是 192.168.x.x 这样的格式。

默认密码为: admin。登录成功后可以在设置中进行修改。
第一次打开会有一个初始设置页面,它会问你音乐文件夹在哪里。选择 music 目录。


填完之后点确认,它就开始扫描你的音乐库了。几千首歌大概三五分钟扫完,两万首的话可能要十分钟左右,扫描期间可以直接开始听,不用等它全部扫完。

几个你会用到的功能
扫描完之后,你会看到一个很像 Spotify 的界面,所有的专辑封面、艺术家信息都自动拉好了。
Daily Mixes,每日混音。它会根据你的收听记录,每天自动生成几个歌单,有点像 Spotify 的每日推荐,但完全基于你自己的库。用了一周之后,它就能大概摸清楚你的口味。
Album Versioning,专辑版本管理。如果你有同一张专辑的 Deluxe 版和普通版,它会自动识别并归类在一起,不会变成两张看起来一样的专辑堆在那里。
收听统计,记录你听了什么、听了多久,有点像年度听歌报告,随时都能看。
手机上怎么用
安卓用户,官方有专门的 Android 客户端,在 GitHub 的 releases 页面 可以下载,安装之后填入 NAS 的地址就能用,体验跟原生 App 差不多。

iPhone 用户,目前没有 iOS 客户端,只能用 Safari 打开 http://NAS的IP:1970 来听。后台播放会有些限制,这是 iOS 的机制问题,不是 Swing Music 的 bug。如果你主要用 iPhone 听歌,这个是需要提前知道的。
在家里局域网里用没有问题,如果想在外面也能听,需要额外配置内网穿透,这个话题比较长,以后单独说。
出问题了怎么办
打开了 1970 端口但页面打不开,先检查飞牛的防火墙设置,确认 1970 端口没有被拦截。
音乐扫不出来,检查 /vol1/1000/music 这个路径是不是真的有文件,以及配置里的路径是不是写对了。
容器启动失败,检查 config 目录的权限,飞牛有时候需要手动给文件夹赋权。
买了 NAS 放硬盘,结果音乐还是靠流媒体平台,总觉得有点可惜。Swing Music 这个方案,部署一次之后基本不用管,它会一直跑在那里,你往音乐文件夹里扔新文件,它自动识别,下次打开就能看到。
GitHub 地址是 github.com/swingmx/swingmusic,有问题也可以去那里的 Issues 区搜一搜,大概率有人遇到过同样的情况。
以上,既然看到这里了,如果觉得不错,随手点个赞、在看、转发三连吧,如果想第一时间收到推送,也可以给我个星标⭐~
谢谢你看我的文章,我们,下次再见。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

浙孤少
校验提示文案
TankT-CQ
校验提示文案
爱我的呗呗
校验提示文案
吴路赛
校验提示文案
我真是老万
校验提示文案
lyls
校验提示文案
吃肉肉
校验提示文案
翩翩逐晚风猪
校验提示文案
值友5603978516
校验提示文案
kzl726
校验提示文案
kranich
校验提示文案
老菜鸟0330
校验提示文案
值友7338603493
校验提示文案
老菜鸟0330
校验提示文案
kranich
校验提示文案
kzl726
校验提示文案
值友5603978516
校验提示文案
翩翩逐晚风猪
校验提示文案
吃肉肉
校验提示文案
lyls
校验提示文案
值友7338603493
校验提示文案
我真是老万
校验提示文案
吴路赛
校验提示文案
TankT-CQ
校验提示文案
浙孤少
校验提示文案
爱我的呗呗
校验提示文案