9K star!Java开发的网盘应用,多种存储支持

文摘   科技   2024-09-14 10:35   北京  

点击上方蓝字关注我们

IT 咖啡馆,探索无限可能!

恭喜你发现了这个宝藏,这里你会发现优质的开源项目、IT知识和有趣的内容。

 

工作中会用到各种不同的存储,本地的、云上的、服务器里的,一用多了就不好管可怎么办。

今天我们分享的开源项目,它是java开发的网盘应用,可以帮你将各类存储资源同步在一个网页中显示,它就是:zfile




zfile 是什么



ZFile 是一个适用于个人的在线网盘(列目录)程序,可以将你各个存储类型的存储源,统一到一个网页中查看、预览、维护,再也不用去登录各种各样的网页登录后管理文件,现在你只需要在 ZFile 中使用。你只需要填写存储源相关信息,其他的令牌刷新,授权都是尽量自动化的,且有完善的文档帮助你使用。

  • 支持对接 S3、OneDrive、SharePoint、Google Drive、多吉云、又拍云、本地存储、FTP、SFTP 等存储源

  • 支持在线浏览图片、播放音视频,文本文件、Office、obj(3d)等文件类型。

 




功能特点


 

  1. 文件操作:支持新建文件夹、上传文件、删除文件、下载文件、重命名文件等文件基础操作

  2. 文件预览:在线预览您的文本、视频、音频、pdf、office、3d 文件.

  3. 代码高亮:对于代码文件,Z-File 支持代码高亮显示,方便查看和编辑。

  4. 多媒体播放:能够在线播放视频和音频文件,支持创建音乐播放列表。

  5. 文件和目录二维码:为文件和目录生成二维码,便于快速分享。

  6. 文件夹密码:支持给文件夹设置密码访问,支持通过 glob 表达式来进行通配符路径的密码设置

  7. 全局搜索:提供全局搜索功能,方便用户快速找到所需文件。

  8. 多种存储支持:支持本地存储、Amazon S3、阿里云、腾讯云、又拍云、FTP、SFTP、OneDrive、SharePoint 等存储类型

  9. 内存缓存和数据库:内置内存缓存和内存数据库,无需额外安装,提高性能。

  10. 个性化配置:允许用户进行个性化配置,包括自定义目录的 header 说明文件和自定义 JS, CSS。

  11. 响应式布局:支持响应式设计,可以在不同设备上(如手机、平板、电脑)访问。





开源?不开源




对于项目很多人会有疑问,这到底是不是个开源项目?我的总结这是个极具中国特色的开源项目,也就是一开始是开源的,后来为了变现就不开源了,当然啦,这是个人决定也并没有太多可说的。

项目可以看到有社区版和付费版两个版本,社区版更新到4.1.5,而最新的付费版是4.1.6,也就是付费版会比社区版更快一些。另外有一些功能是只出现在付费版中的,社区版没有。

再有一点,我看到文档中说明,付费版代码是不开源的。ZFile 不提供源代码,因为没有提供源码还可以防止二次分发的解决方案。如果您实在需要,可单独付费购买源代码,价格为 1W,包后续所有更新(可自行集成到你的项目后二次售卖,但不允许公开泄露 ZFile 源码)。




安装使用



ZFile支持在Linux和windows上安装使用,也可以通过docker来安装使用。 

Docker安装

 

首先可以通过docker来安装ZFile,只需要执行以下的命令即可

docker run -d --name=zfile --restart=always \\    -p 8080:8080 \\    -v /root/zfile/db:/root/.zfile-v4/db \\    -v /root/zfile/logs:/root/.zfile-v4/logs \\    -v /root/zfile/file:/data/file \\    zhaojun1998/zfile

配置说明

下方高亮部分,可自定义端口和数据目录:

  • 端口号:第 2 行冒号左侧的 8080 表示对外暴露的端口号,如其他程序占用,则请修改为其他端口号。

  • 数据目录:第 5 行的 v /root/zfile/file:/data/file \\ 为映射宿主机文件夹 /root/zfile/file 到容器内的 /data/file 文件夹,这样需要在 ZFile 添加本地存储时,填写容器内目录 /data/file 就等同于访问宿主机的 /root/zfile/file 目录了。这一行按照自己的需求修改,如果不需要映射本地存储,则可以删除这一行。

 

Linux 安装

 

安装依赖

首次#=部署才需要安装依赖,更新部署见下方

#ubuntuapt updateapt install -y openjdk-8-jre-headless unzip

下载并解压

安装说明

下面命令中第一行表示默认安装到用户目录下: ~/zfile 下。

对于 root 用户, ~ = /root~/zfile 表示在 /root/zfile 路径下。

对于其他用户, ~ = /home/用户名 表示在 /home/用户名/ 路径下。如对于 oracle 用户, ~/zfile 则表示安装在 /home/oracle/zfile 下。

如需更改安装路径, 请自行修改,如 export ZFILE_INSTALL_PATH=/data/zfile,表示安装在 /data/zfile 路径下。

export ZFILE_INSTALL_PATH=~/zfile# 声明安装到的路径mkdir -p $ZFILE_INSTALL_PATH && cd $ZFILE_INSTALL_PATH# 创建文件夹并进入wget --no-check-certificate <https://c.jun6.net/ZFILE/zfile-release.war#> 下载 zfile 最新版unzip zfile-release.war && rm -rf zfile-release.war# 解压并删除压缩包chmod +x $ZFILE_INSTALL_PATH/bin/*.sh# 授权启动停止脚本

启动项目

~/zfile/bin/start.sh# 启动

启动后浏览器访问 http://ip:8080 即可,如启动后无法访问,请检查 端口是否冲突 或 防火墙/安全组是否开启

简单检查方式为在服务器执行 

curl http://127.0.0.1:8080
  • 如返回 curl: (7) Failed connect to 127.0.0.1:8080; Connection refused 表示未启动成功。

  • 如返回 <!DOCTYPE html> <html lang="zh-CN">…… 等字样表示启动成功,如启动成功但通过服务器 IP 无法访问,那一般就是防火墙/安全组未放行端口问题。

 




功能预览



文件夹密码/加密

视频播放

视频在线播放支持格式为:

  • mp4(h264 编码)

  • hls(xx.m3u8)

  • flv

如视频播放不了,或者播放后无画面、无声音,就是浏览器不支持该视频类型的解码,可尝试点击视频下方工具栏调用本地播放器进行解码

画廊模式

文件列表

文件预览




总结



总的来说Zfile是一个不错的网盘应用,统一的管理思路值得借鉴,Java的开发语言,让国内的程序员朋友们更加熟悉。对于其开源和变现的问题,我只能说一方面国内的商业化环境不够成熟,另一方面项目在变现上有一些不够大气,其实可以考虑更成熟、更好的包装形式。

   




项目信息


  • 项目名称:zfile

  • GitHub 链接:https://github.com/zfile-dev/zfile

  • Star 数:9K



往期推荐

28K star!开源的自建PaaS平台,拥有自己的Heroku

8K star!开源的小巧工具,帮你实现证件照自由

「Github一周热点39期」开源RAG UI、AI证件照、开源免费ERP等5个项目

  




识别二维码关注我们
微信号- it-coffee
B站 - IT-咖啡馆
头条号- IT咖啡馆

IT咖啡馆
开源项目、IT技能和有趣的事情
 最新文章