本期推荐的是一个阿里云盘的webdav协议开源实现项目——webdav-aliyundriver。
本项目实现了阿里云盘的webdav协议,只需要简单地配置一下,就可以让阿里云盘身变为webdav协议的文件服务器。基于此,你可以把阿里云盘挂载为Windows、Linux、Mac系统的磁盘,可以通过NAS做文件管理或文件同步。
安装使用
支持refreshToken登录方式,具体看参数说明。
--aliyundrive.refresh-token
阿里云盘的refreshToken,获取方式见下文
--server.port
非必填,服务器端口号,默认为8080
--aliyundrive.auth.enable=true
是否开启WebDav账户验证,默认开启
--aliyundrive.auth.user-name=admin
WebDav账户,默认admin
--aliyundrive.auth.password=admin
WebDav密码,默认admin
--aliyundrive.work-dir=/etc/aliyun-driver/
token挂载路径(如果多开的话,需修改此配置)
获取refreshToken方式:
1. 先通过浏览器(建议chrome)打开阿里云盘官网并登录:阿里云盘
2. 登录成功后,按F12打开开发者工具,点击 Application,点击 Local Storage,点击 Local Storage下的
https://www.aliyundrive.com/,点击右边的 token,此时可以看到里面的数据,其中就有 refresh_token,把其值复制出来即可。(格式为小写字母和数字,不要复制双引号。例子:
ca6bf2175d73as2188efg81f87e55f11)
运行:
- jar包运行
下载jar包:
https://github.com/zxbu/webdav-aliyundriver/releases
java -jar webdav.jar --aliyundrive.refresh-token="your refreshToken"
- 容器运行
docker run -d --name=webdav-aliyundriver --restart=always -p 8080:8080 -v /etc/localtime:/etc/localtime -v /etc/aliyun-driver/:/etc/aliyun-driver/ -e TZ="Asia/Shanghai" -e ALIYUNDRIVE_REFRESH_TOKEN="your refreshToken" -e ALIYUNDRIVE_AUTH_PASSWORD="admin" -e JAVA_OPTS="-Xmx1g" zx5253/webdav-aliyundriver
# /etc/aliyun-driver/ 挂载卷自动维护了最新的refreshToken,建议挂载
# ALIYUNDRIVE_AUTH_PASSWORD 是admin账户的密码,建议修改
# JAVA_OPTS 可修改最大内存占用,比如 -e JAVA_OPTS="-Xmx512m" 表示最大内存限制为512m
- Docker-Compose
version: "3.0"
services:
webdav-aliyundriver:
image: zx5253/webdav-aliyundriver
container_name: aliyundriver
environment:
- TZ=Asia/Shanghai
- ALIYUNDRIVE_REFRESH_TOKEN=refreshToken
- ALIYUNDRIVE_AUTH_USER-NAME=admin
- ALIYUNDRIVE_AUTH_PASSWORD=admin
- JAVA_OPTS=-Xmx1g
volumes:
- /etc/aliyun-driver/:/etc/aliyun-driver/
ports:
- 6666:8080
restart: always
# “refreshToken”请根据下文说明自行获取。
# “ALIYUNDRIVE_AUTH_USER-NAME”和“ALIYUNDRIVE_AUTH_PASSWORD”为连接用户名和密码,建议更改。
# “/etc/aliyun-driver/:/etc/aliyun-driver/”,可以把冒号前改为指定目录,比如“/homes/USER/docker/alidriver/:/etc/aliyun-driver/”。
# 删除了“/etc/localtime:/etc/localtime”,如有需要同步时间请自行添加在environment下。
# 端口6666可自行按需更改,此端口为WebDAV连接端口,8080为容器内配置端口,修改请量力而为。
# 建议不要保留这些中文注释,以防报错,比如QNAP。
支持的功能
- 查看文件夹、查看文件
- 文件移动目录
- 文件重命名
- 文件下载
- 文件删除
- 文件上传(支持大文件自动分批上传)
- 支持超大文件上传(官方限制30G)
- 支持WebDav权限校验(默认账户密码:admin/admin)
- 文件下载断点续传
- Webdav下的流媒体播放等功能
暂不支持
- 移动文件到其他目录的同时,修改文件名。比如 /a.zip 移动到 /b/a1.zip,是不支持的
- 文件上传断点续传
更多内容大家可自行前往阅读。