无缝且高效的文件共享,1分钟完成搭建

过去跟大家分享过一个专注文本代码分享的好用工具:MicroBin。本篇则是一个主打文件分享的高颜值且轻量的工具:Pingvin Share,几分钟即可部署搞定。

至于为什么NAS明明自带文件分享,还要折腾这类应用?只能说看场景吧,有时候会嫌弃NAS的臃肿,也能弥补一些不足,在临时分享和反向文件收集的时候效率也更高一些。

项目特征

Pingvin Share 是一个基于开源的文件共享平台,它以用户隐私为核心设计,完全在用户的控制之下运行。这不仅解决了数据存储的安全性问题,还赋予了用户更多的自主权。此外,Pingvin Share 具有高度可定制性,用户可以根据自己的需求灵活部署和管理文件共享服务。

项目亮点

对硬件资源的需求超级低,树莓派这种也没问题

创建文件共享,使用链接共享文件并支持访问

支持自定义链接的后缀

部署超级简单(Docker部署2分钟搞定)

没有文件大小的限制(硬盘决定上限)

支持设置分享的有效期设置

支持访客限制,可以设置密码保护

支持切换是否需要登陆才能上传

支持注册/关闭注册

支持邮件提醒接收者

支持暗黑模式浅色和深色模式

支持amd64/arm64

一、部署流程

会介绍两种方式:以威联通为例的NAS,以 Debian 12 为例的Linux。

威联通NAS部署

第一创建一个专属路径用于配置数据持久化(提议位于常用的Docker安装路径下),我命名为pingvin,具体的路径为/share/Container/pingvin。

无缝且高效的文件共享,1分钟完成搭建

打开Docker管理工具Container Station创建新的项目(应用程序)。将以下代码根据自身情况进行修改,粘贴进框内并创建。

version: '3' # 最新版可删除该行


services:
  pingvin-share:
    image: stonith404/pingvin-share
    restart: unless-stopped
    ports:
      - 9594:3000 # 冒号左侧可改
    environment:
      - TRUST_PROXY=false # 没有配置反向代理为false,否则改为true.
    volumes:
      - "/share/Container/pingvin/data:/opt/app/backend/data" # 文件的共享数据,确保项目升级后不会丢失
      - "/share/Container/pingvin/data/images:/opt/app/frontend/public/img" # 存储图片等静态资源,例如logo背景图等

无缝且高效的文件共享,1分钟完成搭建

部署完毕后,根据上文web输入NAS_IP:9594即可访问并使用pingvin。

VPS部署

SSH进入控制台,分别输入以下指令

sudo -i
mkdir -p /root/docker/pingvin-share
cd /root/docker/pingvin-share
vim docker-compose.yml

英文输入状态下输入i键可进入编辑模式,将上面的代码修改后粘贴即可:端口号,反代,文件目录。

volumes:
      - "./data:/opt/app/backend/data"
      - "./data/images:/opt/app/frontend/public/img"

修改后还是保持英文输入状态,然后按下 esc退出编辑,然后同时按SHIFT+:输入wq 并回车即可保存退出。

最后输入命令启动服务:

docker compose up -d

二、配置相关

项目的汉化并不算完整,因此就一起来看下。

初始界面如下,点击开始使用。

无缝且高效的文件共享,1分钟完成搭建

创建初始用户,点击注册。

无缝且高效的文件共享,1分钟完成搭建

第一项为配置pingvin,第二项会直接跳转到使用界面。

无缝且高效的文件共享,1分钟完成搭建

可以先进行配置,设置你自己的专属服务名称以及logo等,我这边已经改完。另外,如果大家正式外网启用,App地址也要改成实际域名,不然分享可能报错。(特别说明,Secure 标志用于指示浏览器,仅在通过 HTTPS 连接时发送该 Cookie。这可以防止 Cookie 在不安全的 HTTP 连接中被拦截,提高安全性。因此这类文件分享的应用程序提议通过 HTTPS 提供服务)

无缝且高效的文件共享,1分钟完成搭建

显示首页可以选择关掉,首页就是本节的第一张图。关掉后的默认主页微登陆界面。

电子邮件和第四栏的SMTP实则可以看做绑定。电子邮件就是设置邮件发送时默认的文本格式,列如邀请他人、分享文件、密码更改等,默认英文支持自定义修改。SMTP大家应该都很熟悉,如果你不分享给许多人共用pingvin的话实则也没必要进行配置,关于配置方法可以直接搜索(QQ SMTP,163 SMTP等),教程超级多。

无缝且高效的文件共享,1分钟完成搭建

是否允许未验证的共享:意为是否需要登录账户才可共享。

Default share ID length:文件共享 ID 的默认长度,该 ID 用于唯一标识每次共享,同时作为访问链接的一部分。

块大小:调整上传文件时的分块大小。上传文件会被分割成小块逐步上传,会影响上传效率和连接稳定性。网络差就分小块,虽慢但稳,反之就分大块。

无缝且高效的文件共享,1分钟完成搭建

关于后面的社交账户登陆、LDAP轻量访问、S3存储以及法律声明这里就不做过多介绍,有需求的朋友可以自行填写配置。

三、使用

来到上传界面,由于上面没修改上传限制,可以看到警告。一般设置个10GB左右就够用。支持手动选择或拖动分享。

无缝且高效的文件共享,1分钟完成搭建

要注意的是虽然可以直接上传文件夹,但并不支持文件树保留。

修改后上传,点击共享。要注意的是这边设置完并生成共享链接后,不支持再次修改:

可以通过点击生成生成随机的共享链接,也可手动编写;

设置过期时间,Permanent share意味永不过期;

安全选项中可以设置访问密码保护以及最大访问次数;

共享上传文件的过程中不可关闭界面,也就是不支持后台上传。

无缝且高效的文件共享,1分钟完成搭建

上传完毕后会提示,点击可以复制链接或直接跳转。

无缝且高效的文件共享,1分钟完成搭建

由于我设置了密码,可以看到已经生效。

无缝且高效的文件共享,1分钟完成搭建

输入密码后得到的结果如下。

无缝且高效的文件共享,1分钟完成搭建

设置访问次数上限,满足条件后显示结果如下。

无缝且高效的文件共享,1分钟完成搭建

在共享链接管理中可以查看已生成的共享。可进行追加共享文件和删除共享操作,查看共享信息如下图。

无缝且高效的文件共享,1分钟完成搭建

无缝且高效的文件共享,1分钟完成搭建

NAS中查看,可以看到已经上传分享的文件,应该已经进行过服务器加密。

无缝且高效的文件共享,1分钟完成搭建

© 版权声明
THE END
如果内容对您有所帮助,就支持一下吧!
点赞0 分享
评论 共3条

请登录后发表评论