开源轻量级文件分享服务Go File本地Docker部署与远程访问

前言

今天和大家分享一款超好用的开源轻量级文件分享工具Go File,如何在本地Ubuntu使用Docker快速部署,并结合cpolar内网穿透工具一键发布公网,轻松实现随时随地远程访问分享文件。

无论是办公还是日常生活中,我们都会遇到使用PC设备和安卓设备之间进行文件传输的时候。最近找到的这款Go File就是一款非常不错的文件传输工具。可用于局域网内分享文件和文件夹,直接跑满本地带宽。由于Go语言本身具有跨平台特性,Go-File也能够在不同的操作系统上运行,如Windows、Linux和macOS等。

Go File 的应用场景非常多,无论是团队协作,学习资料分享,个人文件备份都可以轻松搞定。Go File 不仅无需复杂的配置和安装,而且功能非常强大,除了正常的上传和下载文件,还支持文件夹分享,方便一次性分享多个文件。内置图床,支持图片上传和API接口,方便用户将图片资源上传到本地服务器,并用于博客、网站等场景。不仅如此,Go File 还内置视频播放页面,支持在线播放本地视频文件,方便用户在不同设备上观看视频。

而在安全方面,Go File 允许对不同类型的用户设置文件访问权限限制,确保文件安全。支持设置访问频率限制,防止恶意访问和滥用资源。还支持Token API验证,方便与其他系统整合,实现更高级的文件管理和访问控制。

在本例中,也将使用在Ubuntu通过Docker的方式快速部署,过程非常简单,下面就来进行具体演示。

1. 安装Docker

本例使用Docker进行部署,如果没有安装Docker,可以查看这篇教程进行安装:《Docker安装教程——Linux、Windows、MacOS》

首先打开终端输入这行命令拉取镜像:

sudo docker pull justsong/go-file

然后执行这行命令启动容器即可:

sudo docker run -d --restart always -p 3000:3000 -eTZ=Asia/Shanghai -v /home/ubuntu/data/go-file:/data justsong/go-file

本例数据将会保存在宿主机的 /home/ubuntu/data/go-file 目录,大家可自行修改路径。

image-20241206170037563

现在就已经部署完毕了。

2. Go File使用演示

现在您打开Web浏览器输入localhost:3000,就可以访问到Go File的登录页面了,可以看到界面非常简洁明了。

image-20241206170258355

登录账号:用户名为 admin,密码为 123456

image-20241206170400580

成功登录:

image-20241206170447990

点击上传按钮后,可以选择文件夹中的文件或者直接拖拽文件进行上传:

image-20241206170822677

image-20241206170857622

上传成功:

image-20241206170918997

上传视频同样可以在线预览:

image-20241206171129079

点击主页,可以看到刚才上传的文件,有链接分享和二维码分享两种方式:

image-20241206171806576

点击帮助可以查看更多功能介绍与使用教程:

image-20241206171318741

3. 安装cpolar内网穿透

不过我们目前只能在本地局域网内访问刚刚部署的Go File进行文件分享,如果想不在同一局域网内时,也能在外部网络环境远程访问本地部署的Go File,应该怎么办呢?我们可以使用cpolar内网穿透工具来实现远程访问的需求。无需公网IP,也不用设置路由器那么麻烦。

下面是安装cpolar步骤:

Cpolar官网地址: https://www.cpolar.com

使用一键脚本安装命令

sudo curl https://get.cpolar.sh | sh

img

安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)

sudo systemctl status cpolar

img

Cpolar安装和成功启动服务后,在浏览器上输入ubuntu主机IP加9200端口即:【http://localhost:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:

image-20240801133735424

4. 配置Go File公网地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,本例使用了: gofile,注意不要与已有的隧道名称重复
  • 协议:http
  • 本地地址:3000
  • 域名类型:随机域名
  • 地区:选择China Top

点击创建:

image-20241206172637652

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了两个公网地址,接下来就可以在其他电脑或者移动端设备(异地)上,使用任意一个地址在浏览器中访问即可。

image-20241206172811809

如下图所示,成功实现使用公网地址异地远程访问本地部署的Go File文件分享服务啦。

image-20241206172915020

小结

为了方便演示,我们在上边的操作过程中使用cpolar生成的HTTP公网地址隧道,其公网地址是随机生成的。这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址是随机生成,这个地址在24小时内会发生随机变化,更适合于临时使用。

如果有长期使用Go File文件分享服务,或者异地访问与使用其他本地部署的服务的需求,但又不想每天重新配置公网地址,还想让公网地址好看又好记并体验更多功能与更快的带宽,那我推荐大家选择使用固定的二级子域名方式来配置公网地址。

5. 配置Go File固定公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化。

注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】

点击左侧的预留,选择保留二级子域名,地区选择china top,然后设置一个二级子域名名称,填写备注信息,点击保留。

image-20241206173148133

保留成功后复制保留的二级子域名地址:

image-20241206173231438

登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑

image-20241206173303695

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名
  • 地区: China Top

点击更新

image-20241206173342372

更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。

image-20241206173428596

最后,我们使用固定的公网地址访问Go File可以看到访问成功,这样一个永久不会变化的二级子域名网址即设置好了。

image-20241206173601466

最后需要注意:

  1. 默认配置下访客可以上传和下载文件,可在 管理 -> 系统设置 中修改权限配置。
  2. 如果是公网部署,务必记得第一时间更改默认密码!

接下来就可以随时随地远程访问管理Go File了,把公网地址分享给身边的人,还可以方便团队协作。自己用的话,无需云服务器,还可以实现异地远程访问!以上就是如何在Linux Ubuntu系统Docker本地部署Go File并实现异地远程访问进行文件分享的全部过程,感谢观看!

Share:

发表回复

目录

On Key

推荐文章