自托管文件共享平台 Pingvin-share

声明

  本人爱党爱国,是一位坚定的马克思主义者和社会主义支持者,完全支持社会主义,完全支持党在国家的绝对领导。本篇文章所涉及的内容仅供学习与研究使用,任何人在利用本篇文章的相关内容时,应符合社会主义价值观,符合相关的法律法规,若通过本文章的内容进行相关违法活动所造成的法律纠纷问题,本人均不负责。

Pingvin-share 介绍

Pingvin-share是一款轻量且美观的自托管文件共享平台,完美实现高效的文件共享,其特点是如下:

  • 使用链接共享文件:你可以向某盘一样通过链接将文件分享出去。
  • 文件大小无限制:你可以自定义上传文件的限制大小,当然,这一切都基于你的服务器有足够的空间可以容纳下。
  • 设置文件的到期日期:你可以设置文件分享的截止时间,当到了截止日期后,你分享的链接就会失效,同时文件也会自动消除。
  • 通过设置密码来限制访客,保护共享的文件
  • 电子邮件收件人:你可以设置SMTP信息自动向其他人发送邮件分享你的文件
  • 与 ClamAV 集成进行安全扫描:ClamAV会扫描上传文件中是否存在可疑文件,如果存在 ClamAV 会自动移除。ClamAV会消耗很多的资源,因此这里不做演示了。

 下载体验:http://share.rjkfteam.top/s/U2MDU5O,文件密码:456789

已关闭用户注册功能,仅用于我个人资料的存储和分享,不支持其它人进行文件上传和分享,但可以通过我分享的链接进行文件查看和下载。

准备工作

  • 云服务器(Linux,本篇以Ubuntu为例)
  • 成功解析至该服务器的域名

步骤

安装Docker

 Ubuntu可以直接用官方的安装脚本一键安装。

# 从get.docker.com中获取安装脚本
curl -fsSL get.docker.com -o get-docker.sh

# 以root权限执行安装脚本,root用户可省略sudo
# --mirror 参数可以配置安装源,因为一些原因,国内用户可能需要这个参数,这里以阿里源进行安装
sudo sh get-docker.sh --mirror Aliyun

 待脚本执行完,通过下述指令检查Docker是否运行了起来

docker run --rm hello-world

安装Docker compose

 Linux安装Docker compose可直接从官方的GitHub Release中直接下载下来,Mac和Windows一般是安装了Docker Desktop,Docker Desktop自带了Docker compose,因此不需要安装。

$ sudo curl -L https://github.com/docker/compose/releases/download/1.27.4/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

# 国内用户可以使用以下方式加快下载
$ sudo curl -L https://download.fastgit.org/docker/compose/releases/download/1.27.4/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

# 升级权限
$ sudo chmod +x /usr/local/bin/docker-compose

 执行完后,可以查看下docker compose的版本

docker-compose --version

克隆pingvin-share项目至本地
git clone https://github.com/stonith404/pingvin-share.git

# 下载慢的话,可以用镜像
git clone https://ghproxy.com/https://github.com/stonith404/pingvin-share.git

部署

 进入到项目文件中,执行下述命令

docker-compose up -d

 执行后,Docker会开始拉取镜像并运行项目容器,在没有使用国内源的情况下,默认从国外官方镜像仓库拉取的,因此部署速度会慢些。

Pingvin Share配置

 待项目部署完成后,可以就可以通过IP:端口的方式访问了。

 点击开始使用,创建账号(最初的账号权限默认是管理员):

注意:用户名只能是大小写字母和数字,不得出现任何字符。

 创建完成后,点击进行配置。

 配置操作请自行研究,这里着重介绍下SMTP和通用中的App地址

 其中,SMTP配置可以参考我的另外一篇博客文章:SpringBoot邮件服务(一)邮件环境配置

 配置完成后,可以发送一个测试邮件,看看配置是否成功。

 而App地址默认是:http://localhost:3000,在没有配置域名前,可以暂时将localhost替换为你的主机地址。

Nginx反代配置

 我这里已经有一个域名解析到了我部署Pingvin Share的主机上了,具体解析流程可以自行上网搜索。我这里介绍下用Nginx来反代本地的Pingvin Share,核心代码如下,可以直接拷贝拿来用。

Nginx的配置教程请参考我的Nginx入门系列博客文章。

server {
    # share.rjkfteam.top 替换为 解析到你服务器的域名
    server_name share.rjkfteam.top;
    location / {
        proxy_pass http://你服务器的IP地址:3000;
        proxy_http_version 1.1;
        # 不缓存,支持流式输出
        proxy_cache off;  # 关闭缓存
        proxy_buffering off;  # 关闭代理缓冲
        chunked_transfer_encoding on;  # 开启分块传输编码
        tcp_nopush on;  # 开启TCP NOPUSH选项,禁止Nagle算法
        tcp_nodelay on;  # 开启TCP NODELAY选项,禁止延迟ACK算法
        keepalive_timeout 300;  # 设定keep-alive超时时间为65秒
        client_max_body_size  64m;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_cache_bypass $http_upgrade;
        proxy_set_header Accept-Encoding gzip;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

 在不清楚Nginx配置信息的含义的情况下,建议直接将我的配置直接拿去用,否则,反代不成功,会导致Pingvin Share无法正常通过域名访问,进行文件上传和下载。

 重新加载Nginx 配置信息后,即可通过域名访问:share.rjkfteam.top

 域名配置完成后,我们再回到设置-通用-App的地址进行配置,将IP:端口替换为你绑定的域名即可。

 之后就可以上传任意大小的文件到自己的服务器上,只要你的服务器存储空间足够大,存多少个T的学习资料都没有问题,并且还能随时分享给好朋友一起学习。

注意:不要抱有侥幸思想通过这种渠道分享虚假信息,传播反动思想,任何反动派都是纸老虎,都将遭受到社会主义的重拳出击!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

PG Thinker

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值