【云原生】Docker搭建知识库文档协作平台Confluence

目录

一、前言

二、企业级知识库文档工具部署形式

2.1 开源工具平台

2.1.1 开源工具优点

2.1.2 开源工具缺点

2.2 私有化部署

2.3 混合部署

三、如何选择合适的知识库平台工具

3.1 明确目标和需求

3.2 选择合适的知识库平台工具

四、Confluence介绍

4.2 confluence特点

4.3 Confluence中的几个概念

4.3.1 空间(Space)

4.3.2 Dashboard

4.3.3 页面(Page)

4.3.4 模板(template)

4.3.5 权限(Permission)

五、基于Docker搭建Confluence

5.1 前置准备

5.2 安装过程

5.2.1 创建容器挂载目录

5.2.2 使用下面的命令启动

6.1.3 访问主页

6.2 破解过程

6.2.1 拷贝agent包到Confluence指定目录

6.2.2 修改setenv.sh 脚本

6.2.3 重新启动confluence 

6.2.4 获取授权码

6.2.5 输入生成的授权码

七、写在文末


一、前言

对任何一个企业来说,文档可以说是一个非常宝贵的无形资产,文档,可以是技术文档,也可以是项目文档,操作手册,培训文档等等,久而久之,一个企业众多的文档就形成了这个企业底层的知识库,而这个知识库又可以在业务向前推进的过程中提升人员的工作效率,推动各类工作,项目,业务,交付等问题的解决,转而再次成为通用的问题解决方案文档沉淀下来,形成一个良性的正向循环。

二、企业级知识库文档工具部署形式

根据企业所处阶段,团队规模,以及部署成本等综合因素的考量,企业对于知识库文档工具的部署,目前主要有下面几种形式。

2.1 开源工具平台

当团队规模比较小,比如10人左右,为节省服务器资源开销,快速跑业务,一般会选择一些行业内知名度较高的开源工具,比如大家熟悉的语雀,印象笔记,简书等,为了方便文档的分享和传播,甚至直接使用钉钉的文档。

2.1.1 开源工具优点

  • 成本较低

    • 资源托管在第三方平台,在平台人员规模限制的范围内,甚至可以达到零开销;

  • 上手简单

    • 开源工具一般学习和使用成本较低,注册账号即可使用,而且体验感不会太差;

  • 便于分享

    • 团队中某个成员写完文档之后,只需要分享一个链接即可给其他成员使用

2.1.2 开源工具缺点

  • 数据安全性

    • 毕竟文档的数据在第三方平台上,因此数据很难做到绝对安全;

  • 依赖性

    • 使用第三方知识库平台将使组织依赖于该平台的稳定性和可靠性。如果平台出现故障或服务中断,可能会影响到组织的业务运作。

  • 定制性受限

    • 第三方平台通常提供一些标准的功能和界面,对于特定的定制需求可能受到限制。如果组织有特殊的需求,可能无法完全满足。

  • 数据迁移困难

    • 如果组织需要迁移到另一个平台或者将数据重新整合到自己的系统中,可能会面临数据迁移困难的问题,特别是在数据格式和结构上存在差异的情况下。

  • 价格波动

    • 第三方平台的定价通常是根据使用情况和功能来定的,可能会受到价格波动的影响。组织需要考虑成本和长期支出,以及可能的价格调整。

2.2 私有化部署

私有化部署也叫本地部署,即企业搭建属于自己的知识库文档工具平台,即所有的数据都托管在企业自身的服务器资源上,从而做到数据的绝对可控,这也是目前很多稍成规模的团队的普遍做法。

2.3 混合部署

结合本地部署和云端部署的优势,部分功能在本地部署,部分功能在云端部署,以满足不同的需求和安全要求。

三、如何选择合适的知识库平台工具

3.1 明确目标和需求

在搭建知识库平台之前,首先要明确搭建的目标和需求

  • 知识库的范围

    • 是针对整个企业的知识库,还是只针对某个部门或特定领域的知识库?

  • 知识库的内容

    • 需要收集、整理和分享哪些类型的知识?包括文档、培训资料、经验总结等。

  • 知识库的权限管理

    • 是否需要设置不同角色的权限,以保护敏感信息?

  • 用户的需求

    • 用户需要怎样的搜索、浏览和分享功能?需要支持多语言吗?

 

3.2 选择合适的知识库平台工具

有许多知识库平台工具可供选择,以可以私有化部署的平台来说,比如 PingCode,Helplook,Confluence,SharePoint、MM-Wiki等。在选择合适的工具时,可以考虑以下几个方面:

  • 易用性

    • 选择一个用户友好的界面,操作方式简单,方便使用人员快速上手使用,一句话:学习成本低;

  • 功能丰富性

    • 择一个功能齐全的平台,能够满足企业的需求,并支持定制化,像现在有些工具可以支持丰富的插件;

  • 协作性

    • 尽量选择一个支持多人协同编辑、评论和反馈的平台,以便团队成员共同完善知识库。

  • 安全性

    • 选择一个具有严格的权限管理和数据保护措施的平台,以确保敏感信息的安全。

四、Confluence介绍

Confluence是一款由澳大利亚公司Atlassian开发的企业协作平台,是一个专业的 wiki 程序,主要用于团队协作、信息共享和知识管理。它是一个基于网页的企业文档协作工具,可以帮助团队成员共同编辑和分享内容。同时也是一个知识管理的工具,通过它可以实现团队成员之间的协作和知识共享。

Confluence使用简单,但它强大的编辑和站点管理特征能够帮助团队成员之间共享信息,文档协作,集体讨论。目前,Confluence被用于广泛地用于项目团队,IT开发团队,市场销售团队。

4.2 confluence特点

Confluence具有以下特点和优势:

  • 团队协作

    • Confluence提供了团队协作所需的功能,如实时编辑、评论、@提及、任务分配等,促进团队成员之间的合作和沟通。

  • 知识管理

    • 用户可以在Confluence中创建、组织和共享各种类型的内容,有助于知识的积累和传播,提高团队的整体效率。

  • 易用性

    • Confluence具有直观的用户界面和简单易懂的操作流程,使团队成员能够快速上手并高效地使用该工具。

  • 灵活性

    • Confluence支持多种内容格式(如文档、表格、文件、图片等),并提供丰富的插件和扩展选项,比如可以导出多种格式的文件,用户可以根据需求定制和扩展平台的功能。

  • 权限控制

    • Confluence具有灵活的权限管理功能,管理员可以根据需求设置不同的访问权限,确保信息的安全性和保密性。

  • 集成性

    • Confluence与其他Atlassian产品(如Jira、Bitbucket等)和第三方工具(如Slack、Microsoft Teams等)具有良好的集成性,能够与团队已有的工具无缝对接,提升工作效率和协作效果。

综合来说,Confluence作为一个强大的团队协作和知识管理平台,具有易用性、灵活性、权限控制、集成性等优势,能够有效帮助团队提升工作效率、促进信息共享和知识管理。

4.3 Confluence中的几个概念

Confluence的使用并不复杂,只需掌握如下几个基础概念,然后再在界面上操作即可快速上手使用。

4.3.1 空间(Space)

空间(Space),空间是Confluence系统中的一个区域,用于存储wiki页面,并可实现对空间中的所有文档进行统一的权限管理。通常,我们可以针对每个项目单独创建一个空间,然后将与该项目相关的文档信息放置到该空间中,并只对项目成员开设访问/编辑权限。除了项目空间,每个成员都有一个个人空间。平时成员可以将工作总结或笔记等文档放置到自己的空间中;对于对团队有帮助的文档,就可以将文档移动至团队项目空间中。

4.3.2 Dashboard

Dashboard是Confluence系统的主页,在Dashboard界面中包含了Confluence站点中的所有空间列表,以及最近更新内容的列表。

4.3.3 页面(Page)

在Confluence系统中,页面是存储和共享信息的主要方式。

  • 页面可以互相链接、连接、组织和访问,并以树状结构进行组织,放置于空间之中。页面遵循所见即所得的编辑方式,操作上简单易用。更强大的地方在于,页面支持大量的内容展现形式,除了富文本文档外,还包括图表、视频、附件(可预览)、流程图、公式等等;如果还不够,还可以通过海量的第三方插件进行扩展。

  • 在页面中可以通过@其它成员,通知相关成员查看文档。文档保存成功后,被@的成员就会收到邮件,并可根据邮件中的链接访问到该文档,然后进行评论或者协同编辑。

4.3.4 模板(template)

创建页面时除了采用空白文档,也可以选择模板。模板是在空白文档的基础上,根据特定需求添加了一些文档要素,可辅助用户更好更快地创建文档。

Confluence内置了大量的模板,可辅助用于项目工作的各个环节,包括产品需求、会议记录、决策记录、指导手册(How-to)、回顾记录、工作计划、任务报告等等。并且由于Confluence和JIRA是同一家公司的产品,在Confluence中可以和JIRA进行无缝衔接,实现对产品质量实现更好的展现。如果对Confluence自带的模板不满意,还可以对模板进行调整,或者根据自己的需求创建其它类型的模板。

4.3.5 权限(Permission)

在安全性方面,Confluence具有完善和精细的权限控制,可以很好地控制用户在Wiki中创建、编辑内容和添加注释。权限控制分3个维度,分别是团队(Group),个人(Individual Users),匿名用户(Anonymous)。

  • 使用团队级的权限控制时,需要在Confluence服务器中对公司员工进行分组,好处在于配置比较方便,只需要对整个团队进行统一的权限配置。
  • 但在实际项目中,经常会存在同一个项目包含多个跨团队成员的情况,这个时候就不适合采用团队权限配置方式,只能采用逐个添加成员的方式,并对各个成员分别配置权限。
  • 另外一种情况,就是对于未登录的用户,以及项目成员以外的用户,可以开设部分权限,例如只读(View)。

五、基于Docker搭建Confluence

接下来演示基于docker搭建Confluence过程。

5.1 前置准备

服务器

如果是基于centos7系统或云服务器安装,建议至少留出4G以上的内存

mysql

Confluence后续的数据都会持久化到mysql进行存储,因此需要提前安装完mysql

JDK

基于centos7系统或云服务器安装,需要提前安装JDK,至少JDK8以上的版本,推荐使用JDK17

docker

如果使用docker部署,请提前在部署Confluence的机器上安装docker

5.2 安装过程

5.2.1 创建容器挂载目录

参照下面的命令依次执行

mkdir -p /data/confluence/file
mkdir -p /data/confluence/data
cd /data/confluence/file

下载atlassian-agent-v1.3.1破解工具,以及mysql的驱动连接jar包

 agent下载地址:git下载地址

mysql驱动连接下载地址:下载地址

5.2.2 使用下面的命令启动

建议不要使用太低的版本,选择7.15或者以上的版本,7版本也是官方长期维护的版本

docker run -d \
--name confluence \
--privileged=true \
-v /data/confluence/data:/var/atlassian/application-data/confluence \
-v /data/confluence/file/mysql-connector-java-5.1.49-bin.jar:/opt/atlassian/confluence/confluence/WEB-INF/lib/mysql-connector-java-5.1.49-bin.jar \
-v /data/confluence/file/atlassian-agent.jar:/home/atlassian-agent.jar \
-e JVM_MINIMUM_MEMORY=2048m \
-e JVM_MAXIMUM_MEMORY=4096m \
-p 8090:8090 -p 8091:8091 \
-e TZ="Asia/Shanghai" \
atlassian/confluence-server:7.15.1

检查是否启动成功

netstat -nltp | grep 8090

6.1.3 访问主页

服务启动之后,浏览器访问:IP:8090,然后可以在这里切换不同的语言类型

6.2 破解过程

下载atlassian-agent-v1.3.1破解工具,以及mysql的驱动连接jar包,参照docker安装完成破解的过程,几乎是一模一样的。这里罗列一下核心步骤:

  • 将agent的jar包拷贝到Confluence的依赖包目录;
  • 找到, setenv.sh 这个脚本;
    • 在文件最后面追加,export JAVA_OPTS="-javaagent:/opt/atlassian/atlassian-agent-v1.2.3/atlassian-agent.jar ${JAVA_OPTS}" ;

6.2.1 拷贝agent包到Confluence指定目录

mv atlassian-agent.jar  /var/atlassian/application-data/confluence/atlassian/atlassian-agent.jar

6.2.2 修改setenv.sh 脚本

在脚本文件最后面追加

export JAVA_OPTS="-javaagent:/opt/atlassian/atlassian-agent-v1.2.3/atlassian-agent.jar ${JAVA_OPTS}" 

6.2.3 重新启动confluence 

验证是否成功

ps aux | grep javaagent  # 检查是否出现-javaagent 

6.2.4 获取授权码

执行下面的命令获得授权码

java -jar /opt/atlassian/atlassian-agent-v1.2.3/atlassian-agent.jar -p conf -m  xxxxx@qq.com -n confluence -o confluence -s 上面的ServerId

6.2.5 输入生成的授权码

将上一步生成的授权码拷贝到浏览器的输入框中,点击下一步,然后参照上面docker搭建的方式最后,配置数据库,然后一步步往后执行即可。

七、写在文末

知识库文档在日常的工作中是一个非常重要的工具,合理使用知识库文档,不仅可以提升自己的工作效率,同时也在一定程度上可以推进整个团队的知识沉淀,为团队的可持续性良性发展提供一个底层的知识支撑,本文详细介绍了基于docker搭建知识库文档协作平台Confluence的过程,至于具体的使用,相信使用过一些开源文档的同学并不陌生,就不再过多赘述了,本文到此结束,感谢观看。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/50858.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

平面点云三角化边数与点的关系

欢迎关注更多精彩 关注我,学习常用算法与数据结构,一题多解,降维打击。 点云三角化定义 原文 说人话: 一个二维平面点集P三角化结果是一个满足以下条件的三角形集合: 1 所有三角形的并集刚好是P的凸包。 2 所有三角…

python3GUI--new音乐播放器!By:PyQt5(附下载地址)

文章目录 一.前言二.展示1.启动2.MV推荐3.专辑详情页4.歌手详情页5.搜索结果页6.歌曲播放页7.我喜欢歌曲页8.我喜欢专辑页 三.思路&启发1.布局2.细节3.组件复用4.项目结构5.优化速度1.Nuitka1.显著提高性能:2.减小程序体积&am…

Java集合框架2024最通俗易懂(图片超全)

集合 1.1、定义 集合就是类型统一的数据组合而成的数据结构,该数据结构可以任意的改变长度。 1.3、Set Set数据存储结构,无序,且不可以重复,元素可以为null,但是也只能出现一次,如下图: 1.3.1、HashSe…

[240726] Mistral AI 发布新一代旗舰模型 | Node.js 合并 TypeScript 文件执行提案

目录 Mistral AI 发布新一代旗舰模型:Mistral Large 2Node.js 合并 TypeScript 文件执行提案:--experimental-strip-types Mistral AI 发布新一代旗舰模型:Mistral Large 2 Mistral AI 宣布推出新一代旗舰模型 Mistral Large 2,该…

算法-----递归~~搜索~~回溯(宏观认识)

目录 1.什么是递归 1.1二叉树的遍历 1.2快速排序 1.3归并排序 2.为什么会用到递归 3.如何理解递归 4.如何写好一个递归 5.什么是搜索 5.1深度(dfs)优先遍历&优先搜索 5.2宽度(bfs)优先遍历&优先搜索 6.回溯 1.什…

Temu测评自养号如何做?三分钟带你入门!

环境系统 现在市场上很多的系统都是现成的或软件包,没有解决风控的能力,如果有需要建议大家自己学习一套技术,把技术掌握在自己手里,这样不会有依赖性 手机端环境:越狱后的ios指定版本手机可以一键新机的系统(参数调试)独享的家…

【NLP自然语言处理】为什么说BERT是bidirectional

首先,来看一下Transformer架构图: 我们知道,Bert设计时主要采用的是Transformer编码器部分,要论述Bert为啥是双向的,我想从编码器和解码器的注意力机制来阐述。 在看这篇博客前,需要对Transformer有一定的…

[C++] vector入门迭代器失效问题详解

文章目录 vector介绍**vector iterator 的使用** vector迭代器失效问题由扩容或改变数据引起的迭代器失效reserve的实现(野指针)insert实现(迭代器位置意义改变)insert修改后失效的迭代器 it迭代器失效 erase后的问题总结&#xf…

MyBatis-Plus的基本使用(一)

目录 前言 特性 MyBatis-Plus入门案例 常用注解 小结 前言 这篇文章主要来学习MyBatis-Plus这个非常强大的框架. 在学习MyBatis-Plus之前,需要有MyBatis的学习基础.因为MyBatis -Plus 是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变&#x…

【Java Bean 映射器】通过 MapStruct 和 BeanUtils 拷贝对象的区别

目录 👋前言 👀一、环境准备 🌱二、拷贝工具使用 2.1 BeanUtils 使用 2.2 MapStruct 使用 💞️三、对比 📫四、章末 👋前言 小伙伴们大家好,最近在一些技术文章中看到了开发时经常接触的对…

面向对象·回顾;万类之祖object;抽象类Abstract。

回顾面向对象 类与对象 类--------(instance实例化对象)-------->对象 类图 调出你public方法–接口 访问控制符 常用private,public。 封装 可见性本类包不同包private✓✕✕不写dafalt(默认)✓✓✕protected✓✓继承✓public✓✓✓…

【计算机网络】RIP路由协议实验

一:实验目的 1:掌握在路由器上配置RIPv2。 二:实验仪器设备及软件 硬件:RCMS交换机、网线、内网网卡接口、Windows 2019操作系统的计算机等。具体为:三层交换机1台、路由器2台。 软件:wireshark软件、记…

01-调试开发k8s

使用 Docker 构建 Kubernete 官方 release 是使用 Docker 容器构建的。要使用 Docker 构建 Kubernetes,请遵循以下说明: Requirements docker Key scripts 以下脚本位于 build/ 目录中。请注意,所有脚本都必须从 Kubernetes 根目录运行 build/run.…

【科研绘图】记录一次论文结果复现

复现原论文中的图片是科研的基本功之一,它不仅验证了研究结果的可靠性,确保了科学工作的准确性和可重复性,还深刻地评估了方法的有效性,体现了对原始研究的尊重和对科学过程的严谨态度。这个过程不仅提高了研究的透明度&#xff0…

记忆注意力用于多模态情感计算!

记忆注意力用于多模态情感计算! 目录 情感计算 一、概述 二、研究背景 三、模型结构和代码 六、数据集介绍 七、性能展示 八、复现过程 九、运行过程 模型总结 本文所涉及所有资源均在传知代码平台可获取。 情感计算 近年来,社交媒体的快速扩张推动了用户…

信通院发布!首个大模型混合云标准

近日,中国信通院发布了首个大模型混合云标准,通过定位当前大模型混合云的能力水平,为基于混合云的大模型服务实践提供指引,并明确未来提升方向。同时,中国信通院基于标准展开大模型混合云能力成熟度专项测试&#xff0…

智能家居全在手机端进行控制,未来已来!

未来触手可及:智能家居,手机端的全控时代 艾斯视觉的观点是:在不远的将来,家,这个温馨的港湾,将不再只是我们休憩的场所,而是科技与智慧的结晶。想象一下,只需轻触手机屏幕&#xf…

VMware 上的 Debian Linux 虚拟机无法听到蓝牙耳机的声音解决方案

项目场景: 在Debian上安装QQ音乐,用来摸鱼 问题描述 在安装完QQ音乐后,发现虚拟机无法听到声音,音乐有在正常播放,但是蓝牙耳机没有听到任何声音: 原因分析: 感觉是虚拟机的声卡没有配置&…

WiFi通信——STM32通过ESP8266-01S与阿里云通信

嵌入式设计中常用的无线通信方式主要由蓝牙、WiFi、Zigbee、Lora、NB-IOT等等。这些是最常用的,也是在实际项目开发中根据项目的数据通信特点来选择相应的无线通信方式。本设计主要是讲解WiFi在嵌入式开发中的使用。 1.ESP8266的三种模式 1.1 STA模式(Station) 工…

FPGA开发——独立仿真和联合仿真

一、概述 我们在进行FPGA开发的过程之中,大部分情况下都是在进行仿真,从而验证代码实现结果的正确与否,这里我们引入了独立仿真和联合仿真进行一个简单介绍。 联合仿真:一般我们在进行仿真之前需要在相应的软件中建立相应的工程…