如何搭建一个自己的音乐服务器

Administrator
发布于 2025-10-18 / 2 阅读
0
0

最近发现,经常用的网易云音乐,有很多歌曲下架了,能听的越来越少了;歌单里的一些歌曲,现在要开通 VIP 才能听了。其实自己常听的歌曲不是很多,现在却有很多听不了了。

怎么办呢,付费吗?花钱当然是一个好方式,花 1 分钟开通 VIP,立马就可以畅听起来。我听的歌也不多,还是搭建一个属于自己的音乐服务器用来听歌吧。

安装音乐服务器

网上搜索了很多音乐服务器,综合对比之后选择了 Navidrome,Navidrome是一款完全开源免费的音乐服务器,且有很多开源客户端可以直接使用,十分方便。

官方也给出了如何使用 Docker 安装 Navidrome 的教程,可以点击查看。

链接:Docker 安装 Navidrome 音乐服务器

编写 docker-compose.yml 文件,配置中使用 volumes 指定了配置文件夹 data,歌曲存放文件夹 folder.

version: "3"
services:
  navidrome:
    image: deluan/navidrome:latest
    user: 1000:1000 # should be owner of volumes
    ports:
      - "4533:4533"
    restart: unless-stopped
    environment:
      # Optional: put your config options customization here. Examples:
      ND_SCANSCHEDULE: 1h
      ND_LOGLEVEL: info
      ND_SESSIONTIMEOUT: 24h
      ND_BASEURL: ""
    volumes:
      - "~/app/music/data:/data"
      - "~/app/music/folder:/music:ro"

下载 docker 镜像,等待 navidrome 镜像下载完成。

linux@darcy:~/music $ sudo docker-compose up -d
Creating network "music_default" with the default driver
Pulling navidrome (deluan/navidrome:latest)...
latest: Pulling from deluan/navidrome
9b18e9b68314: Extracting [==================================================>]  2.708MB/2.708MB
6faacaf0d83b: Downloading [=================>                                 ]  11.49MB/32.64MB
4f4fb700ef54: Download complete
e67430195958: Downloading [========>                                          ]  2.203MB/13.64MB

音乐上传

歌曲的来源这里不细说,我电脑上刚好有几首不知何年何月使用网易云音乐时保存的歌曲,上传歌曲文件到树莓派服务器。

这里直接使用 scp 命令进行上传,需要在歌曲所在文件夹下运行。

  • ./* 表示上传当前目录所有文件。

  • darcy@192.168.31.21 为服务器用户名和 IP.

  • :/home/darcy/music/folder 为上传到的路径。

➜  folder scp ./* darcy@192.168.31.21:/home/darcy/music/folder
darcy@192.168.31.21's password:
GALA - 追梦赤子心.mp3                        100%   13MB   7.0MB/s   00:01
伍佰 - 晚风.mp3                              100% 4102KB   9.4MB/s   00:00
暗杠 - 狂草.mp3                              100% 9693KB   9.1MB/s   00:01
被动(Live).mp3                               100% 4463KB  10.4MB/s   00:00
刘德华 - 17岁 (Live).mp3                      100%   12MB  10.0MB/s   00:01
张雨生 - 我期待.mp3                            100%   14MB   6.8MB/s   00:02
赵英俊 - 方的言.ncm

启动音乐服务器

先使用 sudo docker ps -a 查看 Navidrome 是否已经启动了,如果没有启动可以使用 docker start id 进行启动。服务的默认端口是 4533

linux@darcy:~ $ sudo docker ps -a
CONTAINER ID   IMAGE                     COMMAND            CREATED       STATUS                 

1202902-20221205090925176-955360772.png

外网访问

如果已经是使用云服务器进行部署,那么因为有相应的公网 IP,其实已经可以直接使用公网 IP 访问了。

但是如果使用的树莓派或者家里的其他机器进行部署的,因为没有公网 IP ,只能局限在家庭局域网内,就会让公网访问十分困难。这时有下面的几个方案。

  1. 如果你的宽带运营商每次会分配公网 IP,刚好你又有一个域名,那么可以使用 DNS 服务商提供的 API 进行动态 DNS 配置,让域名总能解析到运营商分配给你的公网 IP。

有公网服务器,可以使用类似于 FRP 这样的内网穿透工具,借助公网服务器暴露局域网服务。


评论