剪藏#Panda不是猫#剪藏

腾讯开源!双模式切换+实时协作,NAS部署QBin,极简却不简单

2025 年 5 月 10 日1 分钟
分享Twitter / XTelegram微博

「亲爱的粉丝朋友们好啊!今天熊猫又来介绍好玩有趣的Docker项目了,喜欢的记得点个关注哦!」

引言

作为国内知名的大厂,鹅厂在国内的风评一直不是特别友好,但这其实完全是因为在游戏圈干的事造成的,仔细翻翻腾讯的github就能发现腾讯其实开源了很多项目,其中不乏一些优质好用的项目,例如腾讯开源的Markdown编辑器——cherry-markdown。

Notion image

但你以为熊猫这次要介绍的就是它?错了,cherry-markdown非常好用,但目前不支持Docker部署,且熊猫也没看到有人将其打包为镜像,熊猫也是懒狗,所以也懒得去打包镜像。但因为其开源加上非常好用的原因,围绕cherry-markdown又诞生了非常多好用的开源项目,这里要介绍的便是今天的主角——Qbin。

Notion image

项目介绍

QBin 致力于打造一个「快速、安全、便捷」的在线编辑与内容分享平台,适用于个人笔记、临时存储、多人协作、跨平台分享等多样化场景。

  • 前端完全使用 HTML、JavaScript 和 CSS 构建,不依赖臃肿框架,集成了 Monaco 代码编辑器、Cherry Markdown 渲染器和通用编辑器,全面适配各种内容创作需求;

  • 后端基于 Deno 的 Oak 框架搭配 Drizzle ORM,同时利用 Deno KV 和 Edge Cache 实现多级缓存机制,读写性能表现优异;

  • 支持 PWA 和 IndexedDB,即使在断网状态下也能继续编辑、保存并预览内容;

  • 可自定义访问路径、设置密码和过期时间,在保障隐私的前提下实现灵活分享;

  • 相较于传统 PasteBin,QBin 在编辑功能、安全机制和可扩展性方面都有显著提升。

项目部署

QBin支持SQlite数据库,也支持用PostgreSQL作为数据库,这里为了快速展示,熊猫就采用SQlite的方式部署,如果有需要独立数据库支持的,可以去项目页查看详细的文档(https://github.com/Quick-Bin)。

本次用到设备为绿联NAS,通过compose配置文件进行部署,在项目中新建项目,输入以下代码,其中一些映射项目需要你根据自身的NAS环境进行更改,例如端口或者文件夹映射目录等等。

JAVASCRIPT
services:   qbin:     image: naiher/qbin:latest     container_name: qbin-app     restart: always     environment:       # 必选环境变量       - ADMIN_EMAIL=admin@qbin.github  # 请修改为你的邮箱       - ADMIN_PASSWORD=qbin  # 请修改为安全的密码       - JWT_SECRET=change_this_to_a_secure_random_string  # 请修改为随机安全字符串       # 可选环境变量       - PORT=8000       - TOKEN_EXPIRE=31536000       - MAX_UPLOAD_FILE_SIZE=52428800       - DB_CLIENT=sqlite       - DATABASE_URL="file:/app/src/qbin_local.db"     volumes:       - qbin-data:/app/src  # 持久化存储数据库文件     ports:       - "8000:8000"     networks:       - qbin-network     healthcheck:       test: ["CMD""curl""-f""http://localhost:8000/api/health"]       interval: 30s       timeout: 10s       retries: 3       start_period: 20s volumes:   qbin-data:  # 定义用于存储SQLite数据库的卷     driver: local networks:   qbin-network:     driver: bridge     internalfalse

如果用SQlite作为数据库,需要注释掉DATABASE_URL,反之则注释掉DB_CLIENT,具体根据自身需求来设置即可,以上代码只是作为例子,一定要切记更改其中的内容。

Notion image

确定好所有的变量以及映射之后点击立即部署,绿联会自动拉取并根据参数部署项目,这时候我们注意查看日志,出现这样的字样也就代表项目部署成功了。

Notion image

项目体验

来到项目界面,整个界面非常简洁,首页有三种编辑器选择,请分别是通用编辑器、code代码编辑器以及Markdown编辑器,根据需求选择不同的编辑器就行。

Notion image

左边菜单的分享和回收站功能暂未开放,毕竟项目还是比较新的,期待后续开发,存储管理中因为是新建项目,所以没有任何内容。

Notion image

熊猫经常用的是Markdown编辑器,点击之后会跳转到markd编辑器界面,整个界面采用的就是腾讯开源的cherry-markdown作为框架和渲染效果。

Notion image

编辑器除了支持常规的Markdown语法,还支持各种文件的插入,例如表格、pdf、word甚至文件,预览界面也做了渲染优化。

Notion image

右上方直接字数统计,同时通过设置菜单可进行一键编辑器切换,切换的同时内容会自动跟随进行格式转换,文件也支持访问加密。

Notion image

写在最后

项目处于初期阶段,很多东西还并不完善,甚至连UI其实都比较简陋,但能看出来底子还是不错的,感兴趣的可以自部署尝试。

以上便是本次分享的全部内容了,如果你觉得还算有趣或者对你有所帮助,不妨点赞收藏,最后也希望能得到你的关注,咱们下期见!

Notion image

原文地址: https://mp.weixin.qq.com/s?__biz=MzkzMDM3OTkxOQ==&mid=2247503684&idx=1&sn=ccfe030debe77c9b5c3274b1d6929406&chksm=c3730f670fee6df89a85bd435044301a34014cd74e2caed5d3cb6606c354a451e2995ff8cf93&mpshare=1&scene=1&srcid=0510SqfZfS89zPjEHgIjn0oL&sharer_shareinfo=626d75b63a17753a1fca35027ca65351&sharer_shareinfo_first=626d75b63a17753a1fca35027ca65351#rd

相关文章