当前位置: 首页 > news >正文

美观强大的文件保险库Chibisafe

在这里插入图片描述

简介

什么是 Chibisafe ?

Chibisafe 是一款用 Typescript 编写的快速文件上传服务,非常实用。它接受文件、照片、文档以及您能想到的任何内容,并返回可共享的链接,供您发送给其他人。它易于使用、易于部署、免费且开源,用户可以轻松部署和使用。

主要特点

  • 多种模式:支持公有模式、用户账户模式和仅邀请模式。
  • 文件上传:能够处理各种文件类型,包括照片和文档,并自动将大文件分块以减少网络故障。
  • 用户友好的界面:提供一个仪表盘,可以通过直观的用户界面直接编辑配置,而无需手动修改环境或配置文件。
  • 直链分享:上传的文件会生成可分享的直接链接,方便用户分享。
  • 扩展性:支持 S3 存储,具有良好的扩展能力,允许用户通过 API 密钥进行编程访问。
  • 隐私和安全:不含广告和追踪,只记录请求的 IP 地址以确保用户隐私。
  • 安装与运行:推荐使用 Docker 进行安装,提供详细的安装指南。

主要功能(v6)

  • 📄 美观的文档
  • 🗄️ 支持 S3 存储
  • 📷 美观的网格布局浏览媒体文件
  • ✨ 对大文件进行分块上传
  • 🔗 分享上传文件的直接链接
  • 📂 带有直接链接的相册/文件夹可分享
  • 📝 创建带有直接链接的片段/要点以供分享
  • 🗃️ 文件管理和文件标签功能
  • 🙋 用户管理和配额设置
  • 🔗 内置 URL 短链接服务
  • ✉️ 公开或私人模式(支持邀请)
  • ⬆️ 原生支持 ShareX,便于从桌面上传截图/屏幕录制
  • 📱 iOS 快捷方式,通过共享菜单上传文件
  • 🌐 浏览器扩展,轻松从网站上传内容
  • 🧩 易于扩展
  • 📖 开源
  • 🚫 无广告、无追踪(仅记录请求的 IP 地址)

安装

在群晖上以 Docker 方式安装。

  • chibisafe/chibisafe:latest 对应的版本为 v6.4.2
  • chibisafe/chibisafe-server:latest 对应的版本为 v6.4.2

采用 docker-compose 安装,需要先准备两个文件,分别是 Caddyfiledocker-compose.yml

Caddyfile

CaddyfileCaddy 服务器的配置文件,用于定义网站的服务器设置和行为。老苏未做任何修改。源文件地址:https://github.com/chibisafe/chibisafe/blob/master/Caddyfile

{servers {trusted_proxies static private_rangesclient_ip_headers X-Forwarded-For X-Real-IP}
}{$BASE_URL} {route {file_server * {root /app/uploadspass_thru}@api path /api/*reverse_proxy @api http://chibisafe_server:8000 {header_up Host {http.reverse_proxy.upstream.hostport}header_up X-Real-IP {http.request.header.X-Real-IP}}@docs path /docs*reverse_proxy @docs http://chibisafe_server:8000 {header_up Host {http.reverse_proxy.upstream.hostport}header_up X-Real-IP {http.request.header.X-Real-IP}}reverse_proxy http://chibisafe:8001 {header_up Host {http.reverse_proxy.upstream.hostport}header_up X-Real-IP {http.request.header.X-Real-IP}}}
}

docker-compose.yml

docker-compose.yml 在官方基础上做了微调,只是增加了 container_name

源文件地址:https://github.com/chibisafe/chibisafe/blob/master/docker-compose.example.yml

services:chibisafe:image: chibisafe/chibisafe:latestcontainer_name: chibisafe-clientenvironment:- BASE_API_URL=http://chibisafe_server:8000expose:- 8001restart: unless-stoppedchibisafe_server:image: chibisafe/chibisafe-server:latestcontainer_name: chibisafe-serverenvironment:- ADMIN_PASSWORD=adminvolumes:- ./database:/app/database:rw- ./uploads:/app/uploads:rw- ./logs:/app/logs:rwexpose:- 8000restart: unless-stoppedcaddy:image: caddy:2-alpinecontainer_name: chibisafe-webvolumes:- ./Caddyfile:/etc/caddy/Caddyfile:ro- ./uploads:/app/uploads:roports:- 24424:80environment:- BASE_URL=":80"restart: unless-stopped

然后执行下面的命令

# 新建文件夹 chibisafe 和 子目录
mkdir -p /volume1/docker/chibisafe/{database,uploads,logs}# 进入 chibisafe 目录
cd /volume1/docker/chibisafe# 将 docker-compose.yml 放入当前目录# 一键启动
docker-compose up -d

运行

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

如果看到下方闪现的 Invalid token,不用理会;

点右上角的 Login 进入登录界面

默认的账号密码:admin/admin

登录成功后的主界面

设置

首先要解决顶部黄色的警告

进入 Setting --> Service --> Serve uploads from

填入服务器地址 http://群晖IP:24424,保存即可

上传文件

进入 Uploads --> Upload file

随便找了几个文件,有图片也有 PPT

刷新页面后,图片可以直接预览

选中文件可以做删除等操作

切换视图模式,可以看到文件链接、文件大小等

上传的文件,可以在 uploads 目录中找到

客户端

Chibisafe 还支持浏览器插件、ShareX等,其中 iOS 快捷方式和浏览器扩展非常适合快速保存照片

其中 ShareX 在老苏之前写的 XBackBone 一文中,详细介绍过如何导入配置文件

文章传送门:轻量级文件管理器XBackBone

当然,在使用这些之前,你还需要生成 API key,用于这些客户端登录到你的服务器时,进行合法性验证

Request new API key 生成

参考文档

chibisafe/chibisafe: Blazing fast file vault written in TypeScript! 🚀
地址:https://github.com/chibisafe/chibisafe

chibisafe/chibisafe-extension: Companion extension for the chibisafe File Uploader.
地址:https://github.com/chibisafe/chibisafe-extension

chibisafe
地址:https://chibisafe.app/

API Reference
地址:https://chibisafe.app/docs

http://www.lryc.cn/news/513426.html

相关文章:

  • 详细教程:SQL2008数据库备份与还原全流程!
  • HTML——49.header和footer标签
  • 【蓝桥杯选拔赛真题87】python输出字符串 第十五届青少年组蓝桥杯python选拔赛真题 算法思维真题解析
  • OpenStack-Dashboard界面简单修改
  • DevOps工程技术价值流:Ansible自动化与Semaphore集成
  • 【服务器】上传文件到服务器并训练深度学习模型下载服务器文件到本地
  • 第四届电子信息工程与数据处理(EIEDP 2025)
  • 模型预测控制(MPC)算法介绍
  • 设计模式 创建型 建造者模式(Builder Pattern)与 常见技术框架应用 解析
  • 嵌入式系统中C++的基本使用方法
  • 机器人C++开源库The Robotics Library (RL)使用手册(四)
  • 在 uni-app 中使用 wxml-to-canvas 的踩坑经验总结
  • 视频智能翻译
  • 《Python加解密小实验:探索数据加密与解密的世界》
  • C高级day四shell脚本
  • android studio 写一个小计时器(版本二)
  • 【网络安全实验室】SQL注入实战详情
  • 华为,新华三,思科网络设备指令
  • WebRTC线程的启动与运行
  • Day3 微服务 微服务保护(请求限流、线程隔离、服务熔断)、Sentinel微服务保护框架、分布式事务(XA模式、AT模式)、Seata分布式事务框架
  • 第9章 子程序与函数调用
  • manacher算法
  • Cocos2dx Lua绑定生成中间文件时参数类型与源码类型不匹配
  • 为什么需要 std::call_once?
  • ubuntu非root用户操作root权限问题-virbox挂在共享文件夹
  • 网络通讯协议
  • centos,789使用mamba快速安装devtools
  • 【人工智能机器学习基础篇】——深入详解强化学习之常用算法Q-Learning与策略梯度,掌握智能体与环境的交互机制
  • 银河麒麟桌面v10sp1修复引导笔记
  • 深入理解 MVCC 与 BufferPool 缓存机制