v2.0 介绍
经过一个多月的开发,v2.0 终于完成,迎来了测试,以下是对 v2.0 的整体介绍
GUI
v2.0 迎来了 GUI,无需再每次登录到 nas 机器进行命令输入了。
开启 GUI 的方式:
1、使用 docker(推荐)
使用 docker 最大的好处就是不用关心 nodejs 环境问题,作者会实时在 docker 镜像更新所需 nodejs 环境,只要你会配置 docker 就可以了
以下是 docker-compose 的配置
version: '3'
services:
docker:
image: likun7981/hlink:latest # docker镜像名称
restart: on-failure
ports: # 这个端口映射
- 9090:9090
volumes: # 这个表示存储空间映射
- /share:/share
environment:
- HLINK_HOME=/share/data/hlinkDocker # 这个是环境变量
重点介绍下 docker 配置
/share:/share
表示把宿主机环境(冒号左边)的/share
目录映射到 docker 环境(冒号右边)下的/share
目录
使用者可以根据自己的路径不同进行调整。 那么问题来了,我自己到底该映射哪个目录?回答这个问题前,我们先了解/share
应该要包含哪些目录
- 包含你的下载目录(也就是你的源文件的目录)
- 包含你的影音库目录(也就是你要硬链到目标地址目录)
- 包含 hlink 所需的存储配置的目录(也就是 environment 中
HLINK_HOME
的地址)
找到这三者的公共父目录映射就可以了,最好保持宿主环境和 docker 环境的映射路径一致
又有人要问了公共父目录是什么?这个...如果这样说你都理解不了,那我也帮不了你了
对于威联通用户直接点击ContainerStation
> 创建
> 创建应用程序
,把上面的配置(需要删除里面的注释)粘贴进去点击创建就可以了
最后说一句,docker 日志里面打印的 ip 是 docker 自己的虚拟 ip,威联通创建 docker 默认网络是使用的桥接模式,所以你访问地址就是:http://威联通机器的ip:9090
2、使用命令行开启
服务开启,会生成一个后台允许的进程,并且会自动添加开机启动
hlink start
打开成功你会看到一下界面,直接访问页面地址即可开始玩耍了,gui 使用就比较简单了,不详细介绍了
服务关闭
hlink stop
关闭成功你会看到一下界面
配置不兼容变更
1. 只能使用配置文件
v1.0是这样的
- hlink -e=xxx,xxx /path/to/sourcePath /path/to/destPath
v2.0是这样的,主要的配置都通过config文件传入
+ hlink /path/to/config.mjs
hlink@v2.0不再支持通过命令行录入源地址、目标地址、配置,主要原因是
- 通过命令行录入地址和配置无法追踪,不好保证
hlink
和hlink prune
进行配置对齐,造成不必要的麻烦 - 通过命令行录入散乱,不好保留
其实作者不再推荐使用命令行,而是直接使用 GUI 即可完成之前所有的事
2. 部分配置更名
就以下这么多
// 配置文件
export default {
- saveMode: 0,
+ keepDirStruct: true,
- includeExtname: [],
+ include: [],
- excludeExtname: [],
+ exclude: [],
- source: '',
- dest: ''
+ pathsMapping: {
+ source的值: dest的值
+ }
}
新增功能
上面介绍了includeExtname
变为了include
,excludeExtname
变为了exclude
这么更名是有原因的,之前的只支持后缀名的配置,现在不一样了,还支持更高级的配置
详情可以看issue#12
- include 和 exclude 可以同时配置了,不再分优先级
相当于是 include规则
- exclude规则
= 最终规则
include
留空表示包含所有文件
- include 和 exclude 都支持高级配置
为了兼容之前后缀的配置如果还是按照之前的配置,就是表示后缀名 像下面这样
export default {
include: ['mp4', 'mp3'],
}
但是你也可以这样配置
export default {
include: {
globs: ['**/abc/**'], // 所有包含abc文件夹的路径
exts: ['mp4', 'mp3'],
},
exclude: {
globs: ['**/bcd/**'], // 所有包含bcd文件夹的路径
},
}
globs
你可以配置所有 glob 表达式什么是 glob?,中文的介绍网络上随意找了一篇Glob 语法及解析
你可以通过 globs 表达式支持的所有规则,来定制你的 include 和 exclude。
如何体验
npm 安装:
npm i -g hlink
docker 安装: 参考上面说明安装 docker 镜像
likun7981/hlink
以上就是所有 v2.0 的改动介绍了