寻找适合小户型的开源知识库open source knowledge base之路
寻找一个开源的知识库,为了把以前花很多时间收集的信息或是项目/课程资料放到一个容易归类和管理的私有自主系统中,以便更容易查阅,花更少时间收集、对比版本及分享等一系列管理工作,同时确保在需要时可以相对快速找到有用的资料,即便是在AI时代,这样的系统还是有它的价值。
名称 | 功能 | 网址 | 说明 |
---|---|---|---|
phpMyFAQ | 常见问题解答管理系统,老牌活跃开源系统 | 官网 | 2001,PHP + MySQL |
myBase server | Mybase可以管理大量的非结构化信息,如网页、图像、文档、电子邮件等,并以树状结构大纲形式存储 | 官网 | 1998,有桌面版和服务器版 |
OpenKM | 电子文档管理系统,它的特点是可用于大型公司或是中小企业, 适应性比较强。 | 官网 | 基于Jboss+J2EE+Ajax web (GWT)+Jackrabbit (lucene)等技术开发,功能和技术应该都很好,但对部署者的要求也高。 |
Documize | 社区版是一个现代化的、开源的知识管理解决方案,旨在替代 Confluence,适用于内部和外部文档的管理。 | 官网 | Go & EmberJS 框架 |
Exo Platform | 一个企业社交平台,有助于将你的员工协作成公司的一个内部社交网络平台。它提供各种功能,包括社交网络、员工协作、内容管理、数据共享、生产力提升、本地化、可移动模板、第三方集成、可扩展性、企业门户等。 | 官网 | 2000,有免费版,但对设备和团队的要求高 |
XWiki | 强大、灵活且可扩展的开源协作软件,用于创建和管理文档、知识库、任务列表等。 | 官网 | 基于Java和数据库更多… |
MediaWiki | 基于网络的Wiki引擎,维基百科和众多wiki网站都使用了MediaWiki。MediaWiki软件最初是为自由内容百科全书维基百科开发,现在已被一些公司机构用作内部知识管理和内容管理系统。 | 官网 | 2002,PHP + MySQL更多… |
mindoc | 是一款针对IT团队开发的简单好用的文档管理系统。它基于Golang开发,旨在提供便捷的部署和使用体验,同时支持Markdown和HTML两种编辑器,适用于存储接口文档、数据库字典、手册说明等文档1 | 官网 | Golang 貌似国人写的软件 |
BookStack.cn | 基于 Mindoc 开发的,为运营而生。功能类似 gitbook 和看云,可用于文档项目管理,也可用于开源书籍的整理并提供用户阅读,支持批量创建文档、markdown 项目一键导入以及文章采集等强大便捷的功能。 | 官网 | 国人写的,更多信息看注脚2 |
BookStack | Dan Brown版, | 官网 | PHP Laravel + Vue.js,安装不简单3 |
phpkb | 可帮您减少支持请求并扩大客户支持,作为售前工具,提供培训;PHPKB 提供运行安全知识库所需的一切。 | 官网 | PHP,开源,印度人 |
DocuWiki | DokuWiki是一个开源wiki引擎程序,运行于PHP环境下。DokuWiki程序小巧而功能强大、灵活,适合中小团队和个人网站知识库的管理 | 官网,中文安装说明 | 2004 PHP,文章标题的中文化支持不好 |
XWiki | XWiki平台是一个强大、灵活且可扩展的开源协作软件,用于创建和管理文档、知识库、任务列表等 | 官网 | 基于java,企业级系统 |
TWiki | 灵活、强大且易于使用的企业 wiki、企业协作平台和 Web 应用程序平台。它是一个结构化 Wiki,通常用于在内联网、外联网或互联网上运行项目开发空间、文档管理系统、知识库或任何其他组件工具。 | 官网 | 1998, Perl, 历史悠久但不太活跃 |
TiddlyWiki | 仅仅采用 Html + CSS + JavaScript 所组成的一个文件,允许你没有服务器、数据库、ASP或PHP的支持就可以编辑自己的 Wiki 系统。和googlepages配合使用不错,不过那样就无法在线编辑了。 | 官网 | 不错的个人分享 |
Mybase还是比较另类
Mybase是一款直观的知识库管理软件,适用于个人和企业的信息管理需求。它允许用户输入非结构化文本、网页、图像、文档、电子邮件甚至任意文件,不限制长度或格式。Mybase像文字处理器一样接受文本输入,所有信息都以树状结构大纲形式存储1。
主要功能
信息管理:Mybase可以管理大量的非结构化信息,如网页、图像、文档、电子邮件等,并以树状结构大纲形式存储12。
全文搜索:提供全文搜索功能,方便用户快速找到所需信息12。
多平台支持:Mybase有桌面版和服务器版,支持Linux、macOS和Windows系统23。
多用户协作:服务器版支持多用户协作,通过网页浏览器进行操作,适用于多种设备23。
版本信息
Mybase目前主要有两个版本:
Mybase Desktop:桌面版,运行在Linux、macOS和Windows桌面电脑上,提供丰富的本地知识库管理功能,数据库全部为离线存储,保存在本地文件系统中23。
Mybase Server:服务器版,运行在Linux、macOS和Windows系统中,提供集中存储管理、网络访问接口、多用户协作、权限管理等功能,客户端界面基于通用Web浏览器平台23。
用户评价
Mybase因其功能全面、操作简便而受到高度评价。尽管其国外注册费用较高(US$59),但国内外用户都对其稳定性和效率表示赞赏。该软件被认为是资料管理/知识管理/笔记软件中的佼佼者,尤其适合需要高效信息管理的个人和企业用户5。
选择要素:
之前使用的几个工具可以满足日常的需求,但偶尔需要一次的额外功能都是借助其他软件完成的,或者得放弃。
比如在2018年停更的knowledgeroot开源知识库最大问题是在移动端没有自适应; Docusaurus虽然很漂亮,无法导出单页的HTML,因为时常有需要拿出某页内容单独分享,Docusaurus的搜索也极其麻烦;
markdown编辑器vNote几乎所有功能都令人满意,唯独导出文件方面不尽人意。
最终选择了Dan Brown版Bookstack,决策因素:非企业级应用,PHP,PC, 移动端自适应,相对简洁的管理,用户管理功能,接受md格式,搜索功能和导出功能。bookstack一次安装成功,所以没有再去测试其他的PHP知识库,这里也有巧合的成分。
bookstack的搜索功能没有knowledgeroot好用,但还过得去。
选择PHP最主要的原因是入门配置要求低,在只有512MiB内存的NanoPi NEO2迷你机上就可以跑,那么机顶盒4和NUC机都没有问题。
bookstack的第一个难点是源码安装,虽然麻烦,但还是有章法的,如果只是看看功能建议用Docker安装可以省心很多很多;第二个难点是对局域网的安装,在LAN环境中也需要域名解析,直接用IP地址没有成功。
还有需要吐槽的地方是markdown控制符不兼容的部分,bookstack支持的控制符不够丰富,markdown编辑器的快捷键说明英文版,当然切换成WYSIWYG编辑器就可以解决大部分问题。
Bookstack安装前提:
- PHP >= 8.1
- MySQL >= 5.7 or MariaDB >= 10.2
- Composer >= v2.2.0
安装的方法在不同OS上不一样,在此只是强调一下注意事项,如果在Web Server上有多个应用,可能要装不同的PHP版本,这里要特别注意PHP版本的切换;Composer也不是太容易安装,安装前要多做点功课;在Web Server、数据库、PHP和Composer都完成的情况下,剩下的步骤已经不多了,后面容易忽略的是:需要为bookstack专门解析一个域名指向-> bookstack/public/,如果这步没有做对,浏览器就无法正确显示bookstack网站。
默认账号密码:
admin@admin.com
password
上三张Dan Brown版 bookstack DEMO的手机截图:
参考分享:
- 企业内部FAQ系统的搭建重要性是什么?
- 知识库建设的5个步骤
- 拥有良好企业知识库的七大好处
- 高效团队必备:10款领先的开源Wiki解决方案,2024.6的不错分享
xap1: 18.23, xap2: 14.125 251224
MinDoc 的前身是 SmartWiki 文档系统。SmartWiki 是基于 PHP 框架 laravel 开发的一款文档管理系统。因 PHP 的部署对普通用户来说太复杂,所以改用 Golang 开发。可以方便用户部署和使用。(SmartWiki 2024.8已经停更了) ↩︎
安装说明2022年8月版本,<-这里有非常多的信息和相关资料,推荐的硬件也不低。此处有点搞,会弄混两个不同的程序,两个bookstack应该没有关联。 ↩︎
CentOS + nginx -> Centos7部署个人wiki(bookstack)踩坑版, ↩︎
基于PHP的bookstack可以在机顶盒上跑,稳定、绝对低功耗,性能对于家用或10人以下小公司不会有问题,只要做好定期备份,可以高枕无忧,对有能力DIY的购置和运行成本可以忽略不记,在稳定、安全、运行成本方面都不可多得。向上扩容只要添置相应硬件空间无限。
↩︎
相关文章:

寻找适合小户型的开源知识库open source knowledge base之路
寻找一个开源的知识库,为了把以前花很多时间收集的信息或是项目/课程资料放到一个容易归类和管理的私有自主系统中,以便更容易查阅,花更少时间收集、对比版本及分享等一系列管理工作,同时确保在需要时可以相对快速找到有用的资料&…...

Linux高级--2.6 网络面试问题
tcp 与 udp的区别 1.tcp 是基于连接的 UDP是基于数据包 2.处理并发的方式不通 a.tcp用epoll进行监听的 b. udp是模拟tcp的连接过程,服务端开放一个IP端口,收到连接后,服务端用另一个IP和端口发包给客户端。 3.tcp根据协议MTU黏包及…...
在 CentOS 7 上安装 Node.js 20 并升级 GCC、make 和 glibc
在 CentOS 7 上安装 Node.js 20 并升级 GCC、make 和 glibc 📖 前言 在 CentOS 7 上使用 NVM 安装 Node.js 后,可能会遇到如下问题: node: /lib64/libm.so.6: version GLIBC_2.27’ not found (required by node) node: /lib64/libc.so.6:…...

音视频入门基础:MPEG2-TS专题(20)——ES流简介
《T-REC-H.222.0-202106-S!!PDF-E.pdf》第27页对ES进行了定义。ES流是PES packets(PES包)中编码的视频、编码的音频或其他编码的比特流。一个ES流(elementary stream)在具有且只有一个stream_id的PES packets序列中携带࿱…...

五子棋小游戏设计(Matlab)
基于Matlab的五子棋小游戏设计 (完整源码运行呈现的GUI界面) (完整的设计说明报告) 需要请随时联系博主,博主基本都在线,能秒回! 随着计算机技术的发展,将传统棋类游戏与编程技术…...
基于Pycharm与数据库的新闻管理系统(3)MongoDB
pip3 install pymongo 1.连接到MongoDB数据库 文件地址:db/mongo_db.py 从 pymongo 模块中导入 MongoClient 类;创建 MongoClient 的一个实例,该实例尝试使用提供的MongoDB连接字符串连接到MongoDB服务器。 from pymongo import MongoClie…...
WebRtc webrtc-streamer部署
文章目录 本文档只是为了留档方便以后工作运维,或者给同事分享文档内容比较简陋命令也不是特别全,不适合小白观看,如有不懂可以私信,上班期间都是在得 WebRtc webrtc-streamer 部署 docker run -p 8000:8000 -it mpromonet/webrt…...

CVPR-2024 | 具身导航模型大一统!NaviLLM:学习迈向具身导航的通用模型
作者:Duo Zheng, Shijia Huang, Lin Zhao, Yiwu Zhong, Liwei Wang 单位:香港中文大学,上海人工智能实验室,感知与交互智能中心 论文链接:Towards Learning a Generalist Model for Embodied Navigation(…...

CAN201 Introduction to Networking(计算机网络)Pt.2 传输层
文章目录 3. Transport Layer(传输层)3.1 Multiplexing and demultiplexing(多路复用和多路分解)3.2 Connectionless transport:UDP3.3 Principles of reliable data transfer3.4 Pipelined communication3.5 TCP: con…...

git仓库多人协作新建分支 合并到主分支流程详解
在多人协作的 Git 仓库中,新建分支并最终将其合并到主分支的流程是为了实现团队协作、提高代码的可管理性、确保代码质量,并且避免多人同时修改同一部分代码导致冲突。以下是这个流程的目的和具体步骤。 目录 1. 在 master 上新建一个分支 2. 进行功能…...

Visual Studio 使用 GitHub Copilot 与 IntelliCode 辅助编码 【AI辅助开发系列】
🎀🎀🎀【AI辅助编程系列】🎀🎀🎀 Visual Studio 使用 GitHub Copilot 与 IntelliCode 辅助编码Visual Studio 安装和管理 GitHub CopilotVisual Studio 使用 GitHub Copilot 扩展Visual Studio 使用 GitHu…...

【时间之外】IT人求职和创业应知【74】-运维机器人
目录 OpenAI最强推理模型o3发布,AGI测试能力暴涨 英伟达宣布收购以色列AI初创企业Runai 汤姆猫首款AI机器人产品明日发售 心勿贪,贵知足。 感谢所有打开这个页面的朋友。人生不如意,开越野车去撒野,会害了自己,不如…...

高阶:基于Python paddleocr库 提取pdf 文档高亮显示的内容
预览 第1步:理解基本结构和导入必要的库 # 1. 首先导入需要的库 import os # 用于处理文件和路径 import cv2 # 用于图像处理 import numpy as np # 用于数值计算 from paddleocr import PaddleOCR # 用于文字识别 from pdf2image import convert_from_path #…...
STM32项目之环境空气质量检测系统软件设计
目录 前言一、软件需求概述二、需求实现思路1.软件开发工具准备2.温湿度实时监测功能3.空气质量实时监测功能(目前硬件没有买该模块,暂未实现)4.实时时间功能5.视觉、听觉报警功能6.WIFI云平台连接,远程查看数据功能(待…...

重温设计模式--原型模式
文章目录 原型模式定义原型模式UML图优点缺点使用场景C 代码示例深拷贝、浅拷贝 原型模式定义 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象; 核心中的核心就是 克隆clone ,后面讲 原型模式是一种创建型设计模式,它的主要…...
输变电资质分一级、二级,新办从二级开始,三级已取消
输变电工程专业承包资质分为一级.二级.三级。 一、输变电工程专业承包一级资质标准:1、企业资产净资产5000万元以上。2、企业主要人员(1)机电工程专业一级注册建设师不少于10人。(2)技术负责人…...
浏览器http缓存问题
一、什么是浏览器缓存 浏览器将请求过的资源(html、js、css、img)等,根据缓存机制,拷贝一份副本存储在浏览器的内存或者磁盘上。如果下一次请求的url相同时则根据缓存机制决定是读取内存或者磁盘上的数据还是去服务器请求资源文件…...
结构化Prompt:让大模型更智能的秘诀
一、结构化提示词 1. 什么是结构化? 结构化: 对信息进行组织,使其遵循特定的模式和规则,从而方便有效理解信息。结构化的思想在各类文本中都得到了广泛应用,例如文章、书籍中都使用了标题、子标题、段落等语法结构。结构化 Prompt 的思维方…...

威联通NAS部署openwrt软路由保姆级教程附镜像文件
创作立场:原创不易,拒绝搬运~ hello 大家好,我是你们的老伙伴,稳重的大王~ 本期教程为大家分享,怎么在NAS里面部署软路由,下面是软路由的镜像文件,有两个版本,400M的是定制版~ Sh…...
《计算机网络(第7版)-谢希仁》期末考试复习题和答案(总结整理)
目录 前言: 一、选择题。 二、填空题。 三、名词解释。 四、简答题。 前言: 这个自动标题自己带了序号,一开始想全部选项和题号都改过来的,结果一看一百多个全是,懒得改了 一、选择题。 1、广域网覆盖的地理范围…...
Qt Widget类解析与代码注释
#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码,写上注释 当然可以!这段代码是 Qt …...

(二)TensorRT-LLM | 模型导出(v0.20.0rc3)
0. 概述 上一节 对安装和使用有个基本介绍。根据这个 issue 的描述,后续 TensorRT-LLM 团队可能更专注于更新和维护 pytorch backend。但 tensorrt backend 作为先前一直开发的工作,其中包含了大量可以学习的地方。本文主要看看它导出模型的部分&#x…...
五年级数学知识边界总结思考-下册
目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...
Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?
在大数据处理领域,Hive 作为 Hadoop 生态中重要的数据仓库工具,其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式,很多开发者常常陷入选择困境。本文将从底…...
Xen Server服务器释放磁盘空间
disk.sh #!/bin/bashcd /run/sr-mount/e54f0646-ae11-0457-b64f-eba4673b824c # 全部虚拟机物理磁盘文件存储 a$(ls -l | awk {print $NF} | cut -d. -f1) # 使用中的虚拟机物理磁盘文件 b$(xe vm-disk-list --multiple | grep uuid | awk {print $NF})printf "%s\n"…...

Mysql中select查询语句的执行过程
目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析(Parser) 2.4、执行sql 1. 预处理(Preprocessor) 2. 查询优化器(Optimizer) 3. 执行器…...
Python学习(8) ----- Python的类与对象
Python 中的类(Class)与对象(Object)是面向对象编程(OOP)的核心。我们可以通过“类是模板,对象是实例”来理解它们的关系。 🧱 一句话理解: 类就像“图纸”,对…...
ArcPy扩展模块的使用(3)
管理工程项目 arcpy.mp模块允许用户管理布局、地图、报表、文件夹连接、视图等工程项目。例如,可以更新、修复或替换图层数据源,修改图层的符号系统,甚至自动在线执行共享要托管在组织中的工程项。 以下代码展示了如何更新图层的数据源&…...
手动给中文分词和 直接用神经网络RNN做有什么区别
手动分词和基于神经网络(如 RNN)的自动分词在原理、实现方式和效果上有显著差异,以下是核心对比: 1. 实现原理对比 对比维度手动分词(规则 / 词典驱动)神经网络 RNN 分词(数据驱动)…...
ffmpeg(三):处理原始数据命令
FFmpeg 可以直接处理原始音频和视频数据(Raw PCM、YUV 等),常见场景包括: 将原始 YUV 图像编码为 H.264 视频将 PCM 音频编码为 AAC 或 MP3对原始音视频数据进行封装(如封装为 MP4、TS) 处理原始 YUV 视频…...