Navidrome 是一款可以在 macOS、Linux、Windows以及 Docker 等平台上运行的跨平台开源音乐服务器应用,它支持传输常见的 MP3、FLAC、WAV等音频格式。允许用户通过 Web 界面或 API 进行音乐库的管理和访问。本文就介绍如何快速在 Linux 系统使用 Docker 进行本地部署以及结合路由侠内网穿透进行外网远程访问。
第一步,安装 Navidrome
1. 安装 Docker,本教程操作环境为 Linux Ubuntu 系统,所以我们需要先安装 Docker 与 docker-compose 。
在终端中执行下方命令安装 Docker:
sudo curl -fsSL https://github.com/tech-shrimp/docker_installer/releases/download/latest/linux.sh| bash -s docker --mirror Aliyun
如果上边命令中访问不了github,可以使用 gitee 的链接安装:
sudo curl -fsSL https://gitee.com/tech-shrimp/docker_installer/releases/download/latest/linux.sh| bash -s docker --mirror Aliyun
安装完后启动 Docker
sudo systemctl start docker
下载 docker-compose文件
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
需要给 docker-compose 一个执行权限
sudo chmod +x /usr/local/bin/docker-compose
查看是否安装成功
docker-compose -version
2. Docker 镜像源添加方法
sudo docker pull deluan/navidrome
3. 创建并启动 Navidrome 容器
如果成功拉取镜像后,创建 navidrome 项目文件夹并编辑 docker-compose.yml:
mkdir navidrome cd navidrome vim docker-compose.yml
把下面内容复制到 docker-compose.yml 文件中并保存,内容如下:
version: "3" services: navidrome: image: deluan/navidrome:latest ports: - "4533:4533" restart: unless-stopped environment: ND_SCANSCHEDULE: 1h ND_LOGLEVEL: info ND_SESSIONTIMEOUT: 24h ND_BASEURL: "" volumes: - "~/Music/data:/data" - "~/Music:/music:ro"
保存退出后,执行下面的命令启动容器:
sudo docker-compose up -d
4,启动成功后,在浏览器中输入 localhost:4533 或者本地ip:4533,可以看到进入到了 Navidrome 的登录界面,设置一个用户名和密码就可以了。
5,登录后,点击界面右上角的头像图标进入个性化,设置语言为简体中文。
6,如果你在真实存储路径中有存放的音乐, Navidrome 会自动扫描进来,并自动将歌曲分类为各个专辑的形式展现。
第二步,外网访问本地 Navidrome
安装路由侠内网穿透。
1,当前未提供网页管理,需要先在任意一台 Windows 机器安装路由侠 Windows 版本,用作跨机器管理。
2,在路由侠客户端主界面,进入“设备管理”,点击右下角的“添加设备”,此时可查看到对应的安装码,此安装码用于将设备添加到对应账号下,可选中后复制。
3,可使用以下 Docker 命令拉取镜像:
docker pull luyouxia/lyx
注意,如果因网络问题,镜像无法拉取,可直接下载后导入:
wget https://dl.luyouxia.com:8443/v2/lyx-docker-i686.tar docker load -i lyx-docker-i686.tar
4,然后使用该镜像启动容器
docker run --name lyx -it --restart=always --net=host -e code=这里填写安装码 luyouxia/lyx
5,此时,需要等待下载和安装的过程,如果一切正常,最终可以看到一些输出,并且可以看到如下提示:
[Device] Logged in. Token: ....
这就表示安装成功了。
当前 Linux 终端这边,如果是使用的上面的命令,Docker 是运行在前台,此时可以按住 Ctrl+C ,退出路由侠,容器也将退出。现在可以使用以下命令将其放入后台持续运行:
docker start lyx
注意如果容器删除,重新 docker run, 将创建为新的设备。
需要注意的是,因为容器参数已经添加了 --restart=always,这样开机就会自动启动,不需要再手动启动路由侠了。
6,现在回到 Windows 这边设备列表,点击右上角的×返回主界面,再次进入,就可以找到这个设备,可以修改名称。
7,回到主界面,点击【内网映射】。
8,注意右上角的设备名称下拉框,这里选中刚刚添加的设备名称,此时在这个界面上添加的映射,就属于刚刚这个设备。添加或修改一般需要等待30秒,容器中的路由侠进程就会更新并加载。切换好设备后,点击【添加映射】。
9,选择【原生端口】。
10,在内网端口里填写默认端口 4533 后点击【创建】按钮,如下图。
11,创建好后,就可以看到一条映射的公网地址,鼠标右键点击【复制地址】。
12,在外网的浏览器的地址栏输入复制的外网地址就可以看到下面这个 Navidrome 登录界面了。
以上就是用 Docker 在本地局域网内部署 Navidrome 以及利用路由侠的内网穿透平台实现外网访问本地局域网的 Navidrome 共享文件的全部教程了,如果想要对路由侠有更多的了解,可以进官网详细了解,路由侠官网地址:www.luyouxia.com