临时文件上传系统Plik

在这里插入图片描述

什么是 Plik ?

Plik 是一个基于 Go 语言的可扩展且用户友好的临时文件上传系统(类似于 Wetransfer)。

软件主要特点:

  • 强大的命令行客户端
  • 易于使用的 Web 用户界面
  • 多个数据后端:文件、OpenStack SwiftS3Google Cloud Storage
  • 多个元数据后端:Sqlite3PostgreSQLMySQL
  • OneShot:文件在第一次下载后销毁
  • 流式传输:文件从上传者直接流式传输给下载者(服务器端不存储任何内容)
  • 可移动的:允许上传者随时删除文件
  • TTL:自定义过期日期
  • 密码:使用登录/密码(基本认证)保护上传
  • 评论:添加自定义信息(使用 Markdown 格式)
  • 用户认证:本地/Google/OVH
  • 上传限制:IP源/令牌
  • 管理员命令行界面和 Web 用户界面
  • 服务器端加密(使用 S3 数据后端)
  • 多架构构建和 Docker 镜像
  • ShareX Uploader:直接集成到 ShareX
  • plikSharp:适用于 Plik.NET API 客户端
  • Filelink for PlikThunderbird 插件,用于将附件上传到 Plik

官方提供了在线 demo,地址:https://plik.root.gg

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 plik ,选择第一个 rootgg/plik,版本选择 latest

本文写作时, latest 版本对应为 1.3.8

docker 文件夹中,创建一个新文件夹 plik,并在其中建一个子文件夹 data

记得给 data 目录新增 Everyone 的读写权限,否则上传文件的时候会报错

文件夹装载路径说明
docker/plik/data/home/plik/server/files存放上传文件

一些高级特性,需挂载设置文件 plikd.cfg 到容器的 /home/plik/server/plikd.cfg,感兴趣的可以参考官方文档:https://github.com/root-gg/plik/blob/master/documentation/docker.md

端口

本地端口不冲突就行,不确定的话可以用命令查一下

# 查看端口占用
netstat -tunlp | grep 端口号
本地端口容器端口
85668080

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

# 新建文件夹 plik 和 子目录
mkdir -p /volume1/docker/plik/data# 进入 plik 目录
cd /volume1/docker/plik# 修改目录权限
chmod a+rw /data# 运行容器
docker run -d \--restart unless-stopped \--name plik \-p 8566:8080 \-v $(pwd)/data:/home/plik/server/files \rootgg/plik

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'services:plik:image: rootgg/plikcontainer_name: plikrestart: unless-stoppedports:- 8566:8080volumes:- ./data:/home/plik/server/files

然后执行下面的命令

# 新建文件夹 plik 和 子目录
mkdir -p /volume1/docker/plik/data# 进入 plik 目录
cd /volume1/docker/plik# 修改目录权限
chmod a+rw /data# 将 docker-compose.yml 放入当前目录# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:8566 就能看到主界面

左上角是一些开关项,鼠标移动到问号上,会有提示

  • Destruct after the first download ?:第一次下载后销毁,意思就是开启后,第一次下载后,文件立即从服务器删除
  • Streaming ?:文件从上传者流式传输到下载者(服务器端不存储任何内容)
  • Removable ?:上传者可以随时删除文件
  • Password ?:启用后,上传和下载之前需要输入密码
  • Comments (Markdown) ?:启用后,可以在上传的内容中添加自定义消息(Markdown 格式)

老苏使用了默认状态,有兴趣可以自己试试

Add files 选择文件

Upload 开始上传,点 Remove 可以删除

上传成功之后

可以把二维码或者 URL 分享给别人,微信扫码后就可以下载了

上传的文件保存在 /docker/plik/data 目录中,但并不是原来的文件名

除了网页外, Plik 还支持命令行客户端

另外 Plik 还提供了 REST-full API 来管理上传和获取文件,感兴趣的请参考官方文档:https://github.com/root-gg/plik/blob/master/documentation/api.md

参考文档

root-gg/plik: Plik is a temporary file upload system (Wetransfer like) in Go.
地址:https://github.com/root-gg/plik

Plik
地址:https://plik.root.gg

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

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

相关文章

用pycharm进行python爬虫的步骤

使用 pycharm 进行 python 爬虫的步骤:下载并安装 pycharm。创建一个新项目。安装 requests 和 beautifulsoup 库。编写爬虫脚本,包括获取页面内容、解析 html 和提取数据的代码。运行爬虫脚本。保存和处理提取到的数据。 用 PyCharm 进行 Python 爬虫的…

轻量级模型,重量级性能,TinyLlama、LiteLlama小模型火起来了

小身板,大能量。 当大家都在研究大模型(LLM)参数规模达到百亿甚至千亿级别的同时,小巧且兼具高性能的小模型开始受到研究者的关注。 小模型在边缘设备上有着广泛的应用,如智能手机、物联网设备和嵌入式系统&#xff0…

java用pdf.js在线预览pdf文件(jeecg框架)

最近在jeecg框架的后台要做一个pdf在线预览的页面功能,可是每次点预览都是下载,所以就要解决这个问题,现在解决了,记录一下,防止后面踩坑。 先放代码: 下面是点“预览”按钮的点击事件,代码放…

【Mac】iTerm for mac(终端工具)软件介绍及安装教程

软件介绍 iTerm 是 macOS 上一个非常受欢迎的终端仿真器,提供了比默认的 Terminal 应用更多的功能和定制选项。它是一款开源软件,主要用于命令行界面的操作和开发者工具。 主要特点和功能: 分页和标签: iTerm 允许用户在单个窗…

师出名门,全靠师兄师姐罩着

前言 2024年的高考刚结束,考生又到了做选择的时候了。选择大于努力,方向错了,白费劲。 耳熟能详的名校 名校意味着? 卓越的教育资源:包括顶尖的师资队伍,他们在学术研究和教学方面经验丰富、造诣深厚。同时,拥有先进的教学设施、…

英国牛津大学博士后职位—统计学

牛津大学(University of Oxford),简称“牛津”(Oxford),位于英国牛津,是一所公立研究型大学,采用传统学院制。是罗素大学集团成员,被誉为“金三角名校”、“G5超级精英大…

Leetcode刷题笔记 | 二叉树基本性质 | 一天的题量 | 5道题目 | 深度优先搜索 | 广度优先搜索 | 递归 | 遍历

🙋大家好!我是毛毛张! 🌈个人首页: 神马都会亿点点的毛毛张 📌本期毛毛张分享的是LeetCode关于二叉树🌲的性质的一些基础题,做这些题目的本质还是遍历二叉树🏃‍➡️的过程&#…

Windows 中的 Hosts 文件是什么?如何找到并修改它?

什么是 Hosts 文件 Hosts 文件是一个纯文本文件,存在于几乎所有的操作系统中,用于将主机名映射到 IP 地址。在域名系统(DNS)尚未普及之前,Hosts 文件是计算机网络中唯一用于主机名解析的方式。随着网络规模的扩大和 D…

show-overflow-tooltip 解决elementui el-table标签自动换行的问题

elementui中 el-table中某一行的高度不想因为宽度不够而撑开换行展示的解决方法。可通过show-overflow-tooltip属性解决&#xff0c;如下 代码是这样的 <el-table-column width"80" prop"id" label"ID"></el-table-column> <el…

wsl2收缩虚拟磁盘,减少空间占用

一、说明 由于WSL2使用的是虚拟磁盘&#xff0c;当虚拟磁盘的空间变大时&#xff0c;仅仅删除WSL2文件系统中没有用到的大文件&#xff0c;磁盘空间是无法自动收缩回收的。本文介绍了一种回收WSL2虚拟磁盘空间的方法。 二、停止WSL2 在收缩 WSL2 虚拟磁盘之前&#xff0c;需…

Linux服务器如何测试存储盘性能是否正常?FIO磁盘压测工具的使用详解

针对磁盘的压力性能测试工具有很多&#xff0c;简单的测试可以通过dd命令实现&#xff0c;而比较专业和强大的磁盘IO测试工具&#xff0c;当然首推FIO了。本文将和你们分享FIO工具安装和用法&#xff0c;希望可以帮助到你们~想要了解FIO工具首先你得知道顺序读写和随机读写这两…

编程开发不得不懂的世界协调时UTC的由来

在各种时间标准出现之前&#xff0c;各地都是根据太阳来进行计时的。把太阳连续2次经过地球同一位置所经历的时间间隔称为真太阳日&#xff0c;然后再把这个太阳日划分为更小的时间单位&#xff0c;例如中国古代使用日晷记录时间&#xff0c;把一个太阳日分为12个时辰。因为地球…

FFmpeg教程-三-播放pcm文件-1

目录 一&#xff0c;下载SDL 二&#xff0c;在Qt中测试 1&#xff0c;在pro文件中加入路径 2&#xff0c;在.cpp文件中加入头文件 3&#xff0c;进行测试 4&#xff0c;显示结果 一&#xff0c;下载SDL 通过编程的方式播放音视频&#xff0c;也是需要用到这2个库: FFmpeg…

CICD之Git版本管理及基本应用

CICD:持续集成,持续交付--让对应的资料,对应的项目流程更加规范--提高效率 CICD 有很多的工具 GIT就是其中之一 1.版本控制概念与环境搭建 GIT的概念: Git是一款分布式源代码管理工具(版本控制工具) ,一个协同的工具。 Git得其数据更像是一系列微型文件系统的快照。使用Git&am…

一年前 LLM AGI 碎片化思考与回顾系列⑧ · 穿越SystemⅡ未知之境

阅读提示&#xff1a; 本篇系列内容的是建立于自己过去一年在以LLM为代表的AIGC快速发展浪潮中结合学术界与产业界创新与进展的一些碎片化思考并记录最终沉淀完成&#xff0c;在内容上&#xff0c;与不久前刚刚完稿的那篇10万字文章 「融合RL与LLM思想&#xff0c;探寻世界模型…

智慧校园-教材管理系统总体概述

智慧校园教材管理系统&#xff0c;作为教育信息化进程的又一实践成果&#xff0c;正逐步改变着传统教材管理的模式。该系统通过集成先进的信息技术&#xff0c;对教材从采购、分配、使用到回收的全过程进行了全面的数字化改造&#xff0c;旨在构建一个高效、透明、节约的教材管…

一次可输入多张图像,还能多轮对话!最新开源数据集,让AI聊天更接近现实

大模型对话能更接近现实了&#xff01; 不仅可以最多输入20张图像&#xff0c;还能支持多达27轮对话。可处理文本图像tokens最多18k。 这就是最新开源的超长多图多轮对话理解数据集MMDU&#xff08;Multi-Turn Multi-Image Dialog Understanding&#xff09;。 大型视觉语言模…

2025艺考时间线来啦!所有艺考生码住!

2025届艺考生们的征途即将启程。对于每一个即将参加艺考的考生和家长来说&#xff0c;梳理艺考时间节点是尤为重要的。 对于艺考生而言&#xff0c;更早的规划意味着更充分的准备时间&#xff0c;更扎实的专业能力。补齐艺考信息差&#xff0c;以下2025艺考时间线一定要看明白…

知识库在AI大模型中的使用流程

大模型知识库的使用流程通常包括以下关键步骤&#xff0c;大模型知识库的使用流程需要跨学科的知识和技能&#xff0c;包括自然语言处理、数据库管理、软件工程等。同时&#xff0c;也需要关注用户体验、性能优化、安全保护等方面&#xff0c;以提供高质量的知识服务。北京木奇…

CC7关于ConstantTransformer返回值不能和put一样的分析

CC7关于ConstantTransformer返回值不能和put一样的分析 前言 实验室的gaorenyusi也是学到cc7的时候问了我一个很好的问题&#xff0c;我当时学的时候没有在意&#xff0c;然后就去调试分析解决了一下 分析 首先是paylaod package CC7;import org.apache.commons.collectio…