几个公司wiki知识库调研和感悟
@
需求背景
公司准备做一个知识库,我这边调研了几个项目,如下
第一个是我们耳熟能详的confluence,但是好想要收费,先搁置
第二个是mindoc,是一个小型的开源项目,可以docker跑项目,上传文件直接映射到本地,使可以用mysql,有点简陋但也基本够用(可docker)
第三个是看很多人推的Wiki.js,怎么说呢,主要看中了他外观还有一万六千多star,毕竟建立于nodejs基础之上写的,但是有个致命bug,后面会写(可docker)
具体实现
- mindoc
docker pull registry.cn-hangzhou.aliyuncs.com/mindoc/mindoc:v0.13
// 它容器里面有自带的mysql的其他工具,只需要对外暴露端口就行
docker run --name=mindoc --restart=always -v /data/uploads:/mindoc/uploads -v /data/database:/data/database -e MINDOC_DB_ADAPTER=sqlite3 -e MINDOC_DB_DATABASE=./database/mindoc.db -e MINDOC_CACHE=true -e MINDOC_CACHE_PROVIDER=file -e MINDOC_ENABLE_EXPORT=true -p 8181:8181 -p 3306:3306 -d registry.cn-hangzhou.aliyuncs.com/mindoc/mindoc:v0.13
- wiki.js
先配置好mysql的数据库,空的即可,名字自定,然后再适当修改docker的命令参数
docker run -d -p 8080:3000 --name wiki --restart unless-stopped -e "DB_TYPE=mysql" -e "DB_HOST=你的db" -e "DB_PORT=你的prot" -e "DB_USER=你的user" -e "DB_PASS=你的password" -e "DB_NAME=你的数据库名" ghcr.io/requarks/wiki:2
经验&吐槽
在这里我要特地花点篇幅介绍下wiki.js的使用经验,因为是国外项目很多操作流程跟咱们就不大一致,可能本来思维方式就不大一样嘛,
首先是到写文章页,摸了半天原来是先进到看文章页

然后再点击右上角的+号

然后要先输入你这个新页面的地址路径

选择哪种编辑器

组织填写信息

首先要诟病的是他上方工具栏可用工具太少了,都没有代码框可以选

然后是他图片处理,都不能直接粘贴图片,非要先上传再选,上传就上传了吧,选的时候还看不到缩略图,真尬

接着是他用户权限那块,理解是好理解的,先分配用户,再给这个用户分配组,再给组分配权限
OK,那我先回管理界面分配权限去
怎么回去,如下图,点击设置

同样,怎么回到页面的界面配置界面点"退出"

怎么配置一个用户能不能看到这个页面呢,就是配置这个页面给不给这个用户组权限,如下图

然后最为致命的地方来了,我用一个用户创建A页面,添加图片,然后给另一个用户的用户组给予所有权限,但是用另一个用户访问A页面文字能出来,但图片一直就出不来,特意在网上找了这个老哥疑问看了下,还是不行,这也是我最后放弃wiki.js的原因.
小结
一开始国产项目看不上,就用用国外的,各种不适应但也算是走过来了,但最后这个致命bug很蛋疼,还有选择图片不能看缩略图很烦,最后想法是前期使用国内开源,后期使用confluence(也不算贵,一年基本一天一块钱,按我们现在规模)
几个公司wiki知识库调研和感悟的更多相关文章
- Confluence 实现公司wiki【转】
Confluence是一个企业级的Wiki软件,可用于在企业.部门.团队内部进行信息共享和协同编辑一.安装过程1 安装并配置mysql [root@vm1 ~]# /etc/my.cnf charac ...
- 支持中文!秒建 wiki 知识库的开源项目,构建私人知识网络
不知道有没有人和我一样,觉得自建的东西是互联网上的"自留地".私人空间,有一种自己的一亩三分地随心所欲的痛快. 比如自建的博客想写什么随笔就写什么,不用取悦读者可以自娱自乐:再比如 ...
- 基于Wiki的知识共享平台模型架构
一.引言 当今的全球化知识经济社会中呈现出信息泛滥和知识更新周期短的现象,知识管理逐渐成为现代企业管理中不容忽视的一环.虚拟企业是基于共识目标而组成的动态协作组织,成员参与的流动性与各成员之间地域分布 ...
- 轻量级SaaS在线作图工具(继之前介绍后完整介绍)
俗话说“一图胜千言”,在办公应用领域,流程图是一个非常好的表现企业业务流程或工作岗位规范等内容的展现形式,比如去给客户做调研,回来后都要描述出客户的关键业务流程,谁.什么时候.在什么地方.负责什么事情 ...
- 轻量级SaaS在线作图工具ProcessOn
俗话说“一图胜千言”,在办公应用领域,流程图是一个非常好的表现企业业务流程或工作岗位规范等内容的展现形式,比如去给客户做调研,回来后都要描述出客户的关键业务流程,谁.什么时候.在什么地方.负责什么事情 ...
- 两款主流项目管理软件PK,哪个更好用?
两款主流项目管理软件PK,哪个更好用? 一.产品介绍 JIRA是Atlassian公司出品的项目与事务跟踪工具,被广泛应用于缺陷跟踪.客户服务.需求收集.流程审批.任务跟踪.项目跟踪和敏捷管理等工作领 ...
- 如何做好技术Team Leader
背景 互联网公司的技术团队管理通常分为2个方向:技术管理和团队管理,互联网公司的技术TL与传统软件公司的PM还是有很大的区别,传统软件公司的PM更多注重于对项目的管理包括项目任务拆解.项目进度以及风险 ...
- 深度好文 | 在阿里做了5年技术Leader,我总结出了这些套路!
导读:阿里巴巴高级技术专家云狄将为大家从管理的角度分享技术TL的核心职责,这其中包括团队建设.团队管理.团队文化.沟通与辅导.招聘与解雇等,希望与大家共同探讨.交流. 背景 互联网公司的技术团队管理通 ...
- SVN服务器搭建实录
第一章 SVN介绍 1.1 什么是SVN(subversion) SVN是近年来崛起的非常优秀的版本管理工具,与CVS管理工具一样,SVN是一个固态的跨平台的开源的版本控制系统.SVN版本管理工具管 ...
- svn版本管理与上线
1.1 SVN介绍 1.1.1 什么是SVN(Subversion)? Svn(subversion)是近年来崛起的非常优秀的版本管理工具,与CVS管理工具一样,SVN是一个跨平台的开源的版本控制系统 ...
随机推荐
- 局部区块多个报表 TAB 页切换及局部区块的参数查询
在企业的业务系统中,如何从纷繁复杂的数据中抽丝剥茧看到关键数据信息呢?一个重要的途径就是将企业和各部门运营中关键的 KPI 集中在一起显示,同时尽量省去在企业的各个业务系统中分别查找数据. 下面是我近 ...
- python中的赋值、浅拷贝、深拷贝的区别
赋值: 可变类型:赋值前后id不会变,赋值后的数据会随源数据变化: 不可变类型:赋值前后id不会变,赋值后的数据不会随源数据变化: 浅拷贝(copy): 可变类型:copy前后id会变,可变类型中存储 ...
- Matlab绘图(2)通过代码进行局部放大绘图、多文件绘图
Matlab进阶绘图 在这次的绘图练习中,我们需要考虑一次性将所有数据文件逐一读入,然后对每幅图图片进行放大处理. 参数设置 这里包括每幅图的标题,图例,读入文件的名称,等等 title_d = {' ...
- JS - JavaScript 主要知识点(基础夯实)
纲要 基本类型和引用类型 类型判断 强制类型转换 作用域 执行上下文 理解函数的执行过程 this 指向 闭包 原型和原型链 js 的继承 event loop 基本类型和引用类型 js中数据类型分为 ...
- 鸿蒙HarmonyOS实战-ArkUI动画(弹簧曲线动画)
前言 弹簧曲线动画是一种模拟弹簧运动的动画效果,通过改变弹簧的拉伸或压缩来表现不同的运动状态.以下是制作弹簧曲线动画的步骤: 创建一个弹簧的模型,可以使用圆形或者曲线来代表弹簧的形状. 将弹簧固定在一 ...
- 力扣21(java&python)-合并两个有序链表(简单)
题目: 将两个升序链表合并为一个新的 升序 链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例 1: 输入:l1 = [1,2,4], l2 = [1,3,4] 输出:[1,1,2,3 ...
- Delta Lake基础介绍(商业版)
简介:介绍 Lakehouse 搜索引擎的设计思想,探讨其如何使用缓存,辅助数据结构,存储格式,动态文件剪枝,以及 vectorized execution 达到优越的处理性能. 作者:李洁杏,Da ...
- Flink CDC 2.0 正式发布,详解核心改进
简介: 本文由社区志愿者陈政羽整理,内容来源自阿里巴巴高级开发工程师徐榜江 (雪尽) 7 月 10 日在北京站 Flink Meetup 分享的<详解 Flink-CDC>.深入讲解了最新 ...
- js实现打字机效果(完整实例)
在上篇css高斯模糊的效果基础上用js实现一个打字机效果: 上图: 代码: <!DOCTYPE HTML> <html lang="en-US"> < ...
- 记录一个vue路由拦截效果的小技巧
使用一句三元表达式, <router-link class="flex-left left" tag="div" :to="loginState ...