开箱即用!一个基于 Go 的文件分享工具!

news/2024/12/19 9:31:01/文章来源:https://www.cnblogs.com/codechen8848/p/18613923

大家好,我是 Java陈序员

今天,给大家介绍一个自托管的文件分享工具,开箱即用!

关注微信公众号:【Java陈序员】,获取开源项目分享、AI副业分享、超200本经典计算机电子书籍等。

项目介绍

Go File —— 一个基于 Go 实现的文件分享工具,开箱即用,内置图床和视频播放页面,可用于局域网内分享文件和文件夹。

功能特色

  • 无需配置环境,仅单个可执行文件,直接双击即可开始使用
  • 提供二维码,适配移动端,可供移动端扫描下载文件,告别手动输入链接
  • 支持分享本地文件夹
  • 内置图床、视频播放功能,支持直接粘贴上传图片,提供图片上传 API
  • 支持拖拽上传,拷贝上传
  • 支持访问频率限制,允许对不同类型的用户设置文件访问权限限制
  • 支持 Token API 验证,便于与其他系统整合
  • 支持 PicGo、配套 CLI 工具,支持命令行上传文件,支持 P2P 模式文件分享
  • 支持 Docker 一键部署

安装使用

一键启动

1、下载可执行文件 go-file.exe

下载地址:https://github.com/songquanpeng/go-file/releases

2、双击启动

3、启动成功后,自动打开浏览器网页

Docker 一键部署

docker run -d --name gofile \-p 3000:3000 \-e TZ=Asia/Shanghai \-v /data/software/gofile:/data \justsong/go-file

容器启动成功后,浏览器访问:

http://{ip/域名}:3000

默认用户密码为 admin/123456,记得登录后到管理页面下的账户管理标签页中更改用户密码。

进阶使用

注意:进阶使用如需添加额外的参数,需打开命令行窗口启动程序。

go-file.exe 所在文件夹,按住 Shift 键并右键空白处,选择在此处打开 PowerShell.

或者在 go-file.exe 所在文件夹的地址栏输入 cmd, 回车打开命令行窗口。

  • 修改默认端口

启动时指定 port 参数:go-file.exe --port 80

  • 分享指定文件夹文件

启动时指定 path 参数:go-file.exe --path ./this/is/a/path

  • 分享指定文件夹视频

启动时指定 video 参数:go-file.exe --video ./this/is/a/path

  • 禁止自动打开浏览器

启动时指定 no-browser 参数:go-file.exe --no-browser true

还有一些其他如速率控制、使用 MySQL 存储等功能可参考项目文档!

工具截图

  • 首页

  • 文件上传

  • 文件

  • 图床

  • 视频

  • 账户管理

  • 系统设置

Go File 提供了完整的文件分享功能,可以用来搭建图床,或者用于分享文件下载(不仅仅是局域网),还具备完善的文件访问权限控制!

快去安装体验吧~

项目地址:https://github.com/songquanpeng/go-file

最后

推荐的开源项目已经收录到 GitHub 项目,欢迎 Star

https://github.com/chenyl8848/great-open-source-project

或者访问网站,进行在线浏览:

https://chencoding.top:8090/#/

大家的点赞、收藏和评论都是对作者的支持,如文章对你有帮助还请点赞转发支持下,谢谢!


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/855241.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

苍穹外卖day01

nginx、YAPI、swagger、knife4jbug记录知识点记录技术选型用户层的技术,主要都是前端技术; 整体结构后端环境搭建缺少sky-take-out.iml文件,在IEDA的终端输入 mvn idea:module 可生成;导入黑马提供的项目后,IDEA中jdk环境需改为18,Maven地址需改为自己的地址;resources文…

pdfjs 报错提示Failed to load module script

参考文章: pdfjs 报错提示Failed to load module script [JavaScript] MIME type 异常 在服务器好不容易配好nginx转发,jar包,静态资源等,访问网站一切ok,结果打开pdf时,无法预览:F12看了下,接口返回正常啊,说明接口没问题,接着看控制台,oh,问题在这: Failed to lo…

跨境电商双旦选品工具分享——看板软件篇

跨境电商在圣诞节和元旦节期间利用看板软件进行选品时,应充分利用其信息整合、数据分析、任务管理和团队协作等功能,以提升选品的效率和准确性。同时,也要关注市场趋势和消费者需求的变化,及时调整选品策略,以抓住节日销售的黄金时机。跨境电商在圣诞节和元旦节期间利用看…

自定义Snippets常用代码片段提高开发效率

自定义Snippets常用代码片段提高开发效率 日常搬砖过程中,有很多代码是重复的 对于这些代码,可以考虑放进工具类,或者安装snippets插件,或者干脆找以前的代码Ctrl+CV也是常有的事 对于常用又简单直接的代码,如果都放进工具类的某个方法中,未免有些过度封装 每一种框架和语…

加速企业流转:智能企业间文件传输方案,驱动业务高效前行!

企业间文件传输是指在不同企业之间,或企业内部的不同部门、团队之间,以及企业与外部合作伙伴之间,进行文件或数据的传递和共享的过程。这些文件可能包括各种类型的文档、图片、视频、代码等,用于支持企业的项目协作、数据备份、数据迁移、数据分析以及数据共享等需求。企业…

Landsat 使用QA波段去云

GEE中不同的landsat系列影像的波段名称、QA云位数有出入,生搬硬套网上现成的QA去云很容易出错。不同的影像需要设置不同的QA_PIXEL波段名称和比特位数,都在GEE的数据波段说明文档里。当前版本似乎都是3-云、4-云阴影。了解了原理,后面遇到陌生影像也能处理。 def rmCloud(im…

MySQL 时区与 serverTimezone

TL;DR手动为 MySQL 指定非偏移量的时区,以避免 TIMESTAMP 类型夏令时问题和时区转化性能瓶颈 TIMESTAMP 范围:1970-01-01 00:00:01 UTC to 2038-01-19 03:14:07 连接 MySQL 数据库时,serverTimezone 参数用于指定数据库服务器的时区,需要设置为与 MySQL 服务端相同的时区My…

【详解】Ftrans安全数据摆渡系统,让数据传输更安全高效且可控!

基于提高安全性、满足合规性要求、保护核心资产、提高性能和可靠性以及风险管理等多方面的考虑,企业一般会选择网络隔离,有助于企业确保网络安全和数据保护,为企业的稳健发展提供有力保障。 一、网络隔离的必要性 1、提高安全性 1)限制潜在攻击者的横向移动:网络隔离可以限…

服务后台报临时上传路径/tmp/tongweb.xxxxxxxxxxxxxxxx.9999/work/Tongweb/localhost/ROOT无效

报错: 当服务后台报org.springframework.web.multipart.MultiPartException,failed to parsemultipart servlet request; nested exception is java.io.IOException,临时上传路径/tmp/tongweb.79923423523523135.9090/work/Tongweb/localhost/ROOT无效;是因为linux过段时间…

在 VS Code 中可以免费使用 GitHub Copilot了!

今天,有一个重大的好消息要分享给大家: 从现在开始,我们可以在 Visual Studio Code 中,免费使用强大的 GitHub Copilot 进行开发啦! 每个人都可以享受到 AI 加持下的丝滑开发体验! 那就让我们一起来看看如何能免费地用上 GitHub Copilot 吧! 1. 下载最新版本的 VS Code…

从底层源码深入分析Bean的实例化

生命周期的整体流程 Spring 容器可以管理 singleton 作用域 Bean 的生命周期,在此作用域下,Spring 能够精确地知道该 Bean 何时被创建,何时初始化完成,以及何时被销毁。 而对于 prototype 作用域的 Bean,Spring 只负责创建,当容器创建了 Bean 的实例后,Bean 的实例就交给…