前言
lx-music,也就是落雪音乐
之前多平台使用的时候,比如换设备,卸载后重装,数据都会丢失。
如果需要备份数据需要手动导出。在跨设备操作同步,感觉比较麻烦。
有没有一个像 网易云音乐,qq 音乐那种账号机制,自动同步歌单,收藏列表呢。跨设备也能自动执行。
其实落雪音乐是拥有一个同步服务的,早期的时候部署方式不方便,自己尝试部署,最终还是没有解决问题,所以没有安装成功。
今天突然想起来,然后再次尝试部署,成功了
本文就带你来如何部署落雪音乐同步服务 lx-music-sync-server。
安装
docker-compose
使用之前需要进行一些准备操作
创建文件夹
1
2
|
sudo mkdir -p /opt/container/lx-music-sync-server
cd /opt/container/lx-music-sync-server-server
|
新建 config.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
module.exports = {
serverName: 'My Sync Server', // 同步服务名称
'proxy.enabled': false, // 是否使用代理转发请求到本服务器
'proxy.header': 'x-real-ip', // 代理转发的请求头 原始IP
maxSnapshotNum: 10, // 公共最大备份快照数
'list.addMusicLocationType': 'top', // 公共添加歌曲到我的列表时的方式 top | bottom,参考客户端的设置-列表设置-添加歌曲到我的列表时的方式
users: [
// 用户配置例子,有两种配置格式
// {
// name: 'user1', // 用户名,必须,不能与其他用户名重复
// password: '123.def', // 连接密码,必须,不能与其他用户密码重复,若在外网,务必增加密码复杂度
// maxSnapshotNum: 10, // 可选,最大备份快照数
// 'list.addMusicLocationType': 'top', // 可选,添加歌曲到我的列表时的方式 top | bottom,参考客户端的设置-列表设置-添加歌曲到我的列表时的方式
// },
],
// 所有名称以 env. 开头的配置将解析成环境变量
// 'env.PORT': '9527',
// 'env.BIND_IP': '0.0.0.0',
// ...其他环境变量看Readme.md可用环境变量附录
}
|
上面的文件是容器内部使用配置文件,自己先创建好,设置用户名和密码,在进行后面的操作之前,请先修改好。
新建 docker-compose.yml
1
2
3
4
5
6
7
8
9
10
|
services:
lx-sync:
image: lyswhut/lx-music-sync-server
container_name: lx-sync
restart: unless-stopped
ports:
- 9527:9527
volumes:
- ./lx_sync_data:/server/data
- ./config.js:/server/config.js
|
先启动查看是否有错误
如果没有错误
1
|
sudo docker compose up -d
|
反向代理
Nginx
这里只列举 核心部分
1
2
3
4
5
6
7
8
9
10
11
12
13
|
server {
# ...
location / {
proxy_set_header X-Real-IP $remote_addr; # 该头部与config.js文件的 proxy.header 对应
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_pass http://127.0.0.1:9527;
proxy_http_version 1.1;
# websocket 必须要配置
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
}
}
|
使用
Windows
具体的设置路径:设置 - 数据同步 - 客户端模式
设置 服务地址后,启动同步功能即可
就会在后面默默发光发热了
Android
同 Windows 一样
Linux