Z-File
此项目是一个在线文件目录的程序, 支持各种对象存储和本地存储, 使用定位是个人放常用工具下载, 或做公共的文件库. 不会向多账户方向开发.
前端基于 h5ai 的原有功能使用 Vue 重新开发了一遍. 后端采用 SpringBoot, 数据库采用内嵌数据库.
预览地址: https://zfile.jun6.net
文档地址: http://docs.zhaojun.im/zfile
系统特色
- 内存缓存 (免安装)
- 内存数据库 (免安装)
- 个性化配置
- 自定义目录的 readme 说明文件
- 自定义 JS, CSS
- 文件夹密码
- 支持在线浏览文本文件, 视频, 图片, 音乐. (支持 FLV 和 HLS)
- 文件/目录二维码
- 缓存动态开启,
缓存自动刷新 (v2.2 及以前版本支持) 全局搜索 (v2.2 及以前版本支持)- 同时挂载多个存储策略
- 支持 阿里云 OSS, FTP, 华为云 OBS, 本地存储, MINIO, OneDrive 国际/家庭/个人版, OneDrive 世纪互联版, 七牛云 KODO, 腾讯云 COS, 又拍云 USS.
快速开始
安装依赖环境:
# CentOS系统
yum install -y java-1.8.0-openjdk unzip
# Debian 9 / Ubuntu 14+
apt update
apt install -y openjdk-8-jre-headless unzip
# Debian 10 (Buster) 系统
apt update && apt install -y apt-transport-https software-properties-common ca-certificates dirmngr gnupg
wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | apt-key add -
add-apt-repository --yes https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/
apt update && apt install -y adoptopenjdk-8-hotspot-jre
如为更新程序, 则请先执行
~/zfile/bin/stop.sh && rm -rf ~/zfile
清理旧程序. 首次安装请忽略此选项.
下载项目:
cd ~
wget https://c.jun6.net/ZFILE/zfile-release.war
mkdir zfile && unzip zfile-release.war -d zfile && rm -rf zfile-release.war
chmod +x zfile/bin/*.sh
下载指定版本可以将
zfile-release.war
改为zfile-x.x.war
,如zfile-2.2.war
。
程序的目录结构为:
├── zfile
├── META-INF
├── WEB-INF
└── bin
├── start.sh # 启动脚本
└── stop.sh # 停止脚本
├── restart.sh # 重启脚本
启动项目:
~/zfile/bin/start.sh
篇幅有限, 更详细的安装教程及介绍请参考: ZFile 文档
访问地址:
用户前台: http://127.0.0.1:8080/#/main
初始安装: http://127.0.0.1:8080/#/install
管理后台: http://127.0.0.1:8080/#/admin
预览
常见问题
默认路径
默认 H2 数据库文件地址: ~/.zfile/db/
, ~
表示用户目录
windows 为 C:/Users/用户名/
linux 为 /home/用户名/
, root 用户为 /root/
2.3 及以后版本路径为
~/.zfile-new/db/
文档文件和加密文件
- 目录文档显示文件名为
readme.md
- 目录需要密码访问, 添加文件
password.txt
(无法拦截此文件被下载, 但可以改名文件)
开发计划
- API 支持 点击查看文档
- 更方便的部署方式
- 布局优化 - 自定义操作按钮 (现为右键实现)
- 后台优化 - 设置按照其功能进行分离
- 体验优化 - 支持前后端分离部署
- 体验优化 - 文本预览更换 vscode 同款编辑器 monaco editor
- 新功能 - Docker 支持
- 架构调整 - 支持多存储策略
- 新功能 - 后台支持上传、编辑、删除等操作
- 新功能 - WebDav 支持
- 新功能 - 离线下载 (aria2)
- 体验优化 - 忽略文件列表 (正则表达式)
- 体验优化 - 自定义支持预览的文件后缀 (正则表达式)
- 体验优化 - 一键安装脚本
支持作者
如果本项目对你有帮助,请作者喝杯咖啡吧。