• Stars
    star
    527
  • Rank 81,402 (Top 2 %)
  • Language
    HTML
  • License
    MIT License
  • Created about 4 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

基于 Go 的文件分享工具,仅单可执行文件,开箱即用,内置图床和视频播放页面. File sharing tool based on Go.

go-file

Go File

文件分享工具,仅单个可执行文件,开箱即用,可用于局域网内分享文件和文件夹,直接跑满本地带宽

license release release docker pull GoReportCard

开发规划 · 程序下载 · 启动器下载 · CLI 下载 · 使用教程 · 截图展示

Note:推荐使用官方的 Go File 启动器,免去命令行操作。

特点

  1. 无需配置环境,仅单个可执行文件,直接双击即可开始使用
  2. 自动打开浏览器,分享文件快人一步。
  3. 提供二维码,可供移动端扫描下载文件,告别手动输入链接。
  4. 支持分享本地文件夹
  5. 适配移动端。
  6. 内置图床,支持直接粘贴上传图片,提供图片上传 API。
  7. 内置视频播放页面,可用于在其他设备上在线博客自己电脑上的视频,轻松跨设备在线看视频。
  8. 支持拖拽上传,拷贝上传
  9. 允许对不同类型的用户设置文件访问权限限制。
  10. 访问频率限制。
  11. 支持 Token API 验证,便于与其他系统整合。
  12. 为不熟悉命令行的用户制作了启动器详见此处
  13. 支持 PicGo,插件搜索 gofile 即可安装,详见此处
  14. 配套 CLI 工具,支持命令行上传文件,支持 P2P 模式文件分享,详见此处
  15. Docker 一键部署:docker run -d --restart always -p 3000:3000 -e TZ=Asia/Shanghai -v /home/ubuntu/data/go-file:/data justsong/go-file

使用方法

v0.3.3 以及之前版本的使用方法请点击此处

直接双击即可使用,默认端口为 3000,程序在第一次启动时会自动创建管理员账户,用户名为 admin,密码为 123456,记得登录后到 管理页面 下的 账户管理 标签页中更改你的用户密码。

之后程序将自动为你打开浏览器,点击右上角的 上传 按钮即可上传,支持拖放上传,支持同时上传多个文件。

进阶使用:

  1. 如果要修改端口,启动时请指定 port 参数:./go-file.exe --port 80
  2. 如果需要分享文件夹,启动时请指定 path 参数:./go-file.exe --path ./this/is/a/path,之后点击导航栏上的 文件 即可。
  3. 如果需要分享本地的视频资源,加 video 参数:./go-file.exe --video ./this/is/a/path,之后点击导航栏上的 视频 即可。
  4. 如果需要启用访问速率控制,需要在启动前设置 Redis 连接字符串环境变量 REDIS_CONN_STRING,例如:redis://default:redispw@localhost:49153
  5. 如果想使用 MySQL,需要先登录 MySQL 创建一个空的数据库 gofile,然后设置 SQL_DSN 环境变量即可,例如:root:123456@tcp(localhost:3306)/gofile
  6. 修改默认的 SQLite 数据库文件的位置,请设置 SQLITE_PATH 环境变量,默认在工作目录下,名称为 go-file.db
  7. 设置会话密钥(默认随机生成),请设置 SESSION_SECRET 环境变量。
  8. 设置文件上传路径(默认为工作目录下面的 upload 目录),请设置 UPLOAD_PATH 环境变量。
  9. 禁止自动打开浏览器,启动时请指定 no-browser 参数:./go-file.exe --no-browser true
  10. 如果想要使用 Token 访问 API,请先前往个人账户管理页面生成 Token,之后在请求时加上 Authorization HTTP 头部,值为 YOUR_TOKEN 或者 Bearer YOUR_TOKEN

如果你不知道怎么加参数:

  1. 打开 go-file 所在的文件夹,
  2. 按住 shift 并右键空白区域,
  3. 选择在此处打开 PowerShell(如果是 Windows 11 的话则需要先点击显示更多选项),
  4. 在打开的终端中输入:./go-file --port 80 --video ./path/to/video

建议直接使用启动器

使用 Docker 进行部署: 执行:docker run -d --restart always -p 3000:3000 -e TZ=Asia/Shanghai -v /home/ubuntu/data/go-file:/data justsong/go-file

数据将会保存在宿主机的 /home/ubuntu/data/go-file 目录。

注意:

  1. 如果主机有多个 ip 地址,请使用 host 参数指定一个其他设备可访问的 ip 地址,如:go-file.exe --host xxx.xxx.xxx.xxx,否则二维码将生成错误。
  2. 默认配置下访客可以上传和下载文件,可在 管理 -> 系统设置 中修改权限配置。
  3. 如果是公网部署,务必记得第一时间更改默认密码!

演示

在线试用(用户名为 admin,密码为 123456):https://go-file.onrender.com

注意,以下展示图片可能没有得到及时跟新。 index page file page image page video page setting page setting page 2

启动器截图:

launcher

其他

Node.js 版本在此

More Repositories

1

message-pusher

搭建专属于你的消息推送服务,支持多种消息推送方式,支持 Markdown,基于 Golang 仅单可执行文件,开箱即用
JavaScript
1,045
star
2

one-api

All in one 的 OpenAI 接口,整合各种 API 访问方式,支持 Azure OpenAI API,也可作为 OpenAI API 代理使用,仅单可执行文件,已打包好 Docker 镜像,一键部署,开箱即用
JavaScript
355
star
3

pytorch-template

To be the world's best PyTorch project template.
Python
181
star
4

stats-cards

在 README 中展示你在知乎,GitHub,B 站,LeetCode,掘金,CSDN,牛客等网站的数据,也可用于服务状态监控. Show your LeetCode & GitHub stats in GitHub Profile.
JavaScript
161
star
5

pronunciation-corrector

拯救你的英语发音,告别因发音错误带来的尴尬!
JavaScript
120
star
6

blog

基于 Node.js 的个人博客系统. Node.js based blog system.
JavaScript
46
star
7

go-public

基于 Go 的端口转发工具,开箱即用. Yet another port forward tool, but easy to use.
Go
29
star
8

battle-city

基于 TypeScript 的《坦克大战》的非标准实现. Yet another Battle City implementation with TypeScript.
TypeScript
23
star
9

microblog

基于 Go 的个人微博客,一个供你闲言碎语的地方. Go based microblog system.
Go
21
star
10

wechat-server

微信公众号的后端,为其他系统提供微信登录验证功能
Go
19
star
11

pytorch-deployment

A template for rapid deployment of PyTorch models.
Python
18
star
12

zhihu-archiver

每日自动抓取知乎热榜,之后转换成 Markdown 文件并构造静态网站
Python
18
star
13

v2ex-clone

V2EX 风格的论坛程序. V2EX's Node.js clone.
JavaScript
16
star
14

L2M-GAN

Unofficial PyTorch implementation of "L2M-GAN: Learning To Manipulate Latent Space Semantics for Facial Attribute Editing".
Python
16
star
15

chat-room

基于 Node.js 开发的聊天室应用. Chat room powered by Node.js.
JavaScript
15
star
16

personal-assistant

让生活简单一点的个人助理应用. A personal assistant app that makes your life easier.
Python
14
star
17

lan-share

基于 Node.js 的文件分享工具. File sharing tool based on Node.js.
HTML
14
star
18

online-code-editor

基于 Node.js & Express.js 的在线代码编辑器. Online code editor based on Node.js.
JavaScript
11
star
19

js-interpreter

一个简陋的 JavaScript 解释器实现. A simple JavaScript interpreter, build for beginners.
C++
11
star
20

related-repos

Find related repository by stars.
JavaScript
10
star
21

gofile-launcher

为 Go File 制作的启动器. Launcher for Go File.
Python
10
star
22

report-generator

用于生成华南理工大学计算机专业校内实习日志,Release 里有打包好的二进制文件,开箱即用!
Python
10
star
23

cv-interview

计算机视觉算法岗面试准备:常考算法的实现
Python
9
star
24

go-text

基于 Go 的终端风格在线聊天工具,仅单可执行文件,开箱即用. Go based terminal-style chat room.
Go
9
star
25

webhook

Execute predefined commands on your server when receiving a specific HTTP GET request.
Go
9
star
26

hexo-theme-lightx

Hexo theme lightx.
HTML
9
star
27

gin-template

用于 Gin & React 项目的模板. Template for Gin & React projects.
JavaScript
9
star
28

songquanpeng

Automatically update your GitHub profile with GitHub Actions.
Python
6
star
29

text-formatter

功能丰富的在线文本清理工具,可用于 PDF、PPT、CAJ 等文字复制格式化,去除多余的空格与换行
HTML
6
star
30

chip8-emulator

Yet another online Chip-8 emulator.
JavaScript
5
star
31

daily-submit

华南理工大学每日自动报平安,自动健康填报
Python
4
star
32

pyqt-template

我的 PyQt 项目模板. My PyQt template.
Python
4
star
33

font-sr

基于 GAN 的字体图片超分辨. Super resoluation for font images based on GANs.
Python
3
star
34

web-reminder

帮你控制摸鱼时间的小工具~
JavaScript
3
star
35

chat-room-android

An android chat room application.
Java
3
star
36

BlendGAN

[WIP] Unofficial PyTorch implementation of "BlendGAN: Implicitly GAN Blending for Arbitrary Stylized Face Generation".
Python
2
star
37

handwriting-generator

手写中文文章生成,可用于生成各种需要手写的文件
Python
2
star
38

terminal-emulator

An online terminal emulator.
JavaScript
2
star
39

filesystem-emulator

Linux filesystem emulator.
C++
2
star
40

openai-mocker

一个模拟 OpenAI API 的 mock server,用以 One API 的压测
Go
2
star
41

rest-reminder

A reminder that will notify you when you need a rest.
C++
2
star
42

go-relay

基于 Go 的 HTTP 中继工具,为你的服务器请求 OpenAI 的 API 提供中继服务,也可用于搭建镜像站,开箱即用. Golang based HTTP relay server.
Go
2
star
43

blog-theme-v2ex

Theme for the following blog system: https://github.com/songquanpeng/blog
EJS
2
star
44

scut-wiki

华南理工大学非官方 Wiki
2
star
45

scripts

在终端执行的脚本,浏览器脚本所在的仓库:https://github.com/songquanpeng/userscripts
Python
1
star
46

ViTGAN

[WIP] Unofficial PyTorch implementation for "ViTGAN: Training GANs with Vision Transformers".
Python
1
star
47

XploreGAN

Unofficial PyTorch Implementation for "Exploring Unlabeled Faces for Novel Attribute Discovery"
Python
1
star
48

mail-query

Quick eml file query.
Python
1
star
49

command-faker

An executable file generator that used to fake other programs.
C
1
star
50

hero-calculator

王者荣耀英雄属性计算器
Java
1
star
51

socks5

Yep, another Socks5 proxy server implementation.
Go
1
star
52

bulma-template

Template for Bulma.
HTML
1
star
53

md2html

A markdown parser without regex used.
Go
1
star
54

snippet-manager

[WIP] Your self-deployed online code snippet manager.
JavaScript
1
star
55

pdf2excel

将 PDF 文件转化为 Excel 表格. Convert your PDF files to Excel files.
Python
1
star
56

gofile-cli

[WIP] CLI for Go File.
Go
1
star
57

minecraft-2d

A 2D game based on Qt.
C++
1
star
58

crack-captcha

Crack captcha of http://dyxt.jw.scut.edu.cn/
Python
1
star
59

pytorch-classifiers

PyTorch implementation of classic classifiers networks.
Python
1
star