在轻量服务器上使用NextList搭建OneDriver列表程序
什么是列表,MJJ们应该都知道。现在开源的优秀的列表程序也很多,就不一一列举了。今天向大家推荐的是NextList。地址是https://github.com/lixiaofei123/nextlist 预览地址 https://demo.326256.xyz/#这是第一个版本,功能还不完善,MJJ们可以提一下需求,会尽量在下一个版本实现。 目前收集到的需求:
1. 支持webdav
2. 支持Onedriver世纪互联
3. 支持夜间模式
4. 支持markdown预览
为什么推荐这一个列表程序呢,因为这个列表程序美观大方,功能齐全, 支持本地存储、对象存储、阿里网盘以及Onedriver。页面上可以直接预览视频、MP3,图片以及PDF,也支持直接从页面上传文件和删除文件。另外一个推荐这个的原因是,其实这是我自己写的(其中阿里网盘的代码主要参考了Alist,在代码中以及github项目主页都已注明),目前还是v0.0.1版本。
下面预览图
支持登录以后,进行文件删除和上传
对于同一文件夹下的视频文件,可以用剧集模式观看,自动根据文件名中的数字进行排序,并且自动播放下一集。
对于同一文件夹下的音乐文件,可以采用音乐盒模式播放,支持列表循环和单曲循环。
有了列表程序,还需要一台好的服务器。强烈推荐腾讯云的轻量服务器。轻量应用服务器(TencentCloud Lighthouse)是新一代开箱即用、面向轻量应用场景的云服务器产品,助力中小企业和开发者便捷高效的在云端构建网站、小程序/小游戏、电商、云盘/图床以及各类开发测试和学习环境,相比普通云服务器更加简单易用,提供高带宽流量包并以套餐形式整体售卖基础云资源,将热门开源软件融合打包实现一键构建应用,是您使用腾讯云的最佳入门途径。
购买服务器
如果没有服务器的话,需要先购买一台腾讯云的轻量服务器。腾讯云经常举办各种活动,可以到他们的官网进行购买,可以选择距离最近的区域购买,不过不想备案的话,可以选择境外的服务器(比如中国香港区域)进行购买。镜像的话,选择【官方镜像】下的【docker基础镜像】
购买了服务器后,如果不是选择的Docker基础镜像,请自行安装Docker环境,这个对MJJ们都不难。
开始安装
安装数据库
docker run --restart=always --name nextlist_db -v /data/db/nextlist:/var/lib/mysql -e MARIADB_ROOT_PASSWORD=nextlist -e MARIADB_USER=nextlist -e MARIADB_PASSWORD=nextlist-e MARIADB_DATABASE=nextlist -d mariadb
安装后端
在 /data/nextlist目录下创建config.yaml文件,内容如下。下述中配置文件的中xxxx项都是必填的参数,其参数值可以访问这里操作获取(https://alist-doc.nn.ci/docs/driver/onedrive)。其余的配置请看配置文件中的注释说明。
port: 8081 # 采用docker部署的话,这个端口不能修改database:mysql: url: nextlist_db port: 3306 database: nextlist username: nextlist password: nextlistdriver: name: onedriverconfig: refreshToken: "xxxxxxxxxxxxx" # 请替换为正确的refreshToken clientID: "xxxxxxxx" # 请替换为正确的clientID clientSecret: "xxxxxxxx" # 请替换为正确的clientSecret redirectUrl: "https://tool.nn.ci/onedrive/callback" key: "nextlist123" # 注意把这个换成一个复杂的字符串 path: /nextlist # 要挂载的onedriver目录 host:http://192.168.4.105:8081 # 后端服务的公网地址以及公网端口site:title: "NextList"# 站点标题copyright: "本站资料仅供学习使用,请在下载后24小时内删除"allowRegister: false # 墙裂建议改成false。改成false的话,注册一个用户就会关闭注册入口auth:secret: "nextlist123" # 注意把这个换成一个复杂的字符串
配置好配置文件以后,可以用下面的命令启动后端服务器
docker run --detach--name nextlist--restart always --linknextlist_db-v /data/nextlist:/data mrlee326/nextlist -p 8081:8081-c /data/config.yaml -d false
如果使用nginx反代nextlist后端的话,注意调整client_max_body_size的值,否则nginx会拦截上传的大文件
安装前端
启动了后端服务器以后,再来启动nextlist的前端服务。启动命令如下
需要把命令中的http://192.168.4.105:8081换成后端服务的实际地址。
docker run --detach --name nextlist_web --restart always --env "APIURL=http://192.168.4.105:8081" -p 80:80 mrlee326/nextlist_web
启动成功后,打开 ip:port,就可以访问了
注意事项
NextLIst的使用非常简单,但是默认情况下,NextList只管理通过在NextList页面中创建或者上传的文件。对于不是通过NextList上传的文件,即直接用Onedriver客户端上传的文件, 可以通过页面中的同步按钮来进行数据的同步,同步以后,就可以看到Onedriver中的文件了。
https://cdn.jsdelivr.net/gh/master-of-forums/master-of-forums/public/images/patch.gif 你如果用的是官方接口的预览,可以直接放到iframe里就没有跨域问题了 支持webdav吗,有的话方便很多 挺不错的,帮顶一下 火钳刘明,楼主这个LIST很好看。 不错 看着不错.不过没有dark阿 不支持https://cdn.jsdelivr.net/gh/master-of-forums/master-of-forums/public/images/patch.gif dark是啥。夜间模式吗?https://cdn.jsdelivr.net/gh/master-of-forums/master-of-forums/public/images/patch.gif 后继会添加吗? 后面都会有的。https://cdn.jsdelivr.net/gh/master-of-forums/master-of-forums/public/images/patch.gif
页:
[1]