Repolode
AndySkaura

AndySkaura/mifun-storage

基于 Telegram Channel 的小文件存储系统,适合作为个人图床使用。

可替代:Google Drive

Star
249
Fork
28
未关闭 Issue
0
最近提交
上个月

这是什么?

米饭云盘是一个基于 Telegram Channel 的小文件存储系统。文件二进制保存在 Telegram Channel 中,SQLite 或 MySQL 只保存目录、文件元数据和 Telegram 映射。上传和下载都以 Node.js Stream 流式转发,不写本地临时文件。

它主要用于搭建个人图床或 Markdown 图床,为博客、静态网站和笔记提供长期稳定的外链。上传后生成的 contentToken 可直接用于预览、下载和缩略图地址。项目还自带 Finder 风格的 Web 文件管理器,支持拖拽上传、标签、带可选密码的存储位置和全局搜索。

由于使用官方 Telegram Bot API,单文件上传上限为 50 MiB,下载上限为 20 MiB。它更适合低并发、单实例的个人或小团队使用,不适合作为高流量公共图床或需要 CDN 级分发的场景。

核心功能

  • 01文件内容保存在 Telegram Channel,元数据存于 SQLite 或 MySQL 8.x。
  • 02上传和下载均以流式方式转发,不落本地临时文件。
  • 03提供长期稳定的公共内容链接,支持预览、下载和缩略图。
  • 04自带 Web 文件管理器,支持拖拽上传、多选和标签。
  • 05存储位置可分别设置匿名读写权限及访问密码。
  • 06提供 Docker 与 Docker Compose 部署方式。

适用场景

  • 为博客、静态网站和 Obsidian、Typora 等 Markdown 笔记提供图片外链。
  • 归档定时任务生成的日志、报表和截图。
  • 为个人或小团队保存文档及其他小文件。

快速上手

  1. 1

    复制环境变量模板

    cp .env.example .env
  2. 2

    安装依赖

    npm install
  3. 3

    在 .env 中填写 TELEGRAM_BOT_TOKEN 和 TELEGRAM_STORAGE_CHAT_ID,然后启动开发服务器

    npm run dev

使用前须知

  • 需要一个 Telegram Bot 和一个用于存储文件的 Telegram Channel。
  • 受 Telegram Bot API 限制,上传上限为 50 MiB,下载上限为 20 MiB。
  • SQLite 仅支持单个应用实例;共享数据库需要 MySQL 8.x。
  • 不适合高流量公共图床或多人协作,也不提供 CDN 或高可用能力。

标签

常见问题

mifun-storage 是什么?
基于 Telegram Channel 的小文件存储系统,适合作为个人图床使用。 米饭云盘是一个基于 Telegram Channel 的小文件存储系统。文件二进制保存在 Telegram Channel 中,SQLite 或 MySQL 只保存目录、文件元数据和 Telegram 映射。上传和下载都以 Node.js Stream 流式转发,不写本地临时文件。
mifun-storage 可以免费使用吗?用的什么许可证?
mifun-storage 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
mifun-storage 还在维护吗?
半年内有更新。mifun-storage 最近一次提交是在 2026年9月10日。
mifun-storage 适合用来做什么?
为博客、静态网站和 Obsidian、Typora 等 Markdown 笔记提供图片外链。 归档定时任务生成的日志、报表和截图。 为个人或小团队保存文档及其他小文件。
mifun-storage 怎么安装和运行?
复制环境变量模板: cp .env.example .env 安装依赖: npm install 在 .env 中填写 TELEGRAM_BOT_TOKEN 和 TELEGRAM_STORAGE_CHAT_ID,然后启动开发服务器: npm run dev
在哪里获取 mifun-storage?
源代码和安装说明在 GitHub 上:https://github.com/AndySkaura/mifun-storage

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目