适用于个人或团队的文档管理和知识库系统,NAS快速部署『BookStack』

适用于个人或团队的文档管理和知识库系统,NAS快速部署『BookStack』

哈喽小伙伴们好,我是Stark-C~

知识库对于很多需要和文字打交道的个人或者团队都不陌生对吧?对于我们个人来说,它可以将常用的学习资料、工作笔记、项目计划和其他重要信息集中存储并便于随时查阅,提升学习效率;对于团队来说,它可以方便地共享信息,确保团队工作的一致性,提升团队的协作能力。

最近发现了一个非常不错的项目『BookStack』,它就非常适合作为个人或者企业团队作为知识库管理系统,最主要的是它还支持私有化部署,安全性也很有保障。

而本篇内容就教大家怎么在海康存储私有云上搞定它。

🔺因为BookStack部署需要依赖mariadb数据库,所以这个时候我们可以通过docker-compose快速部署。我在前不久刚好教大家怎么在海康存储私有云上部署Portainer,Portainer对于docker-compose堆栈支持的就非常好,所以开始之前请根据我之前的教程安装Portainer:

关于BookStack

BookStack 是一个开源的文档管理和知识库系统,它提供了一个直观且功能丰富的界面,可用于组织和管理各种文档,包括文档编写、编辑和共享。它的主要功能和作用包括:

  1. 文档管理:用户可以创建书籍、章节和页面,将相关内容有序地组织在一起,适合用于企业知识库、团队文档、个人笔记等。

  2. 易于使用的界面:BookStack 提供用户友好的界面,允许通过所见即所得的编辑器来编写和格式化文本,使得内容创作变得直观。

  3. 搜索功能:系统内置搜索功能,用户可以快速查找所需信息,提高效率。

  4. 权限管理:支持用户管理和权限设置,允许不同的用户角色对内容进行不同级别的访问和编辑。

  5. 富媒体支持:除了文本,BookStack 还支持图片、视频以及其他媒体文件的嵌入,提升内容丰富性。

  6. 自托管:作为开源项目,用户可以选择在自己的服务器上安装和运行 BookStack,确保数据的安全和隐私。

BookStack也提供了Demo演示网站,部署之前小伙伴们可以先行体验。

BookStack部署

🔺我们先在文件管理器(我的空间)中的Docker目录下新建一个bookstack的文件夹,然后在该文件夹下在建“app_data”和“db_data:”两个子文件夹用于相关配置文件的持久化存储(也便于以后Docker容器迁移)。

  • app_data:bookstack项目存放路径

  • db_data:mariadb数据库存放路径

🔺打开portainer,选择“堆栈--添加堆栈“。

🔺名称“bookstack”,然后将以下docker-compose.yml文件内容复制粘贴到方框之中:

---
services:bookstack:image: lscr.io/linuxserver/bookstackcontainer_name: bookstackenvironment:- PUID=1000- PGID=1000- TZ=Asia/Shanghai- APP_URL=http://192.168.50.104:6875    # 指定应用程序访问IP:port或域名- DB_HOST=bookstack_db- DB_PORT=3306- DB_USER=bookstack- DB_PASS=123456    # 数据库密码- DB_DATABASE=bookstackappvolumes:- /drives/nvme_e1/Users/admin/Docker/bookstack/app_data:/config    # 映射app_data子文件夹本地路径ports:- 6875:80    # 本地端口设置为未被占用restart: unless-stoppeddepends_on:- bookstack_db
​bookstack_db:image: lscr.io/linuxserver/mariadbcontainer_name: bookstack_dbenvironment:- PUID=1000- PGID=1000- TZ=Asia/Shanghai- MYSQL_ROOT_PASSWORD=123456     #数据库root密码- MYSQL_DATABASE=bookstackapp- MYSQL_USER=bookstack- MYSQL_PASSWORD=123456     #数据库密码volumes:- /drives/nvme_e1/Users/admin/Docker/bookstack/db_data:/config    # 映射db_data子文件夹本地路径restart: unless-stopped

需要修改的地方并不多,我已经用“# 中文”给大家注释好了,其它的都保持默认即可,不要动它。至于子文件夹本地路径我在portainer教程中已经说的很清楚了,不知道的可以在过去检查一遍。

🔺部署成功之后可以看到2个容器全部都在正常运行。

🔺打开海康存储这边的Docker管理器,也可以看到2个容器都是正常运行中。

BookStack体验

👉打开方式:

🔺打开方式很简单,直接浏览器【本地IP:端口号】,或者在容器管理中点击immich_server容器,从端口设置中点击“访问地址”即可。

🔺首次打开需要输入账号和密码。默认账号和密码为:admin@admin.com /password。

👉设置中文:

🔺进来之后默认为英文界面,不过它是原生支持中文的。点击右上角“Admin”。

🔺点击“My Account”。

🔺在“Preferred Language”中选择“简体中文”并保存即可。

👉其他功能:

🔺开启用户注册:设置--注册设置--启用注册。

🔺创建角色:BookStack默认有4个基础角色,我们可以跟根据使用场景划分新的角色。

🔺而它最大的亮点之一就是它的权限分配的细粒度真的是非常丰富。

🔺在“设置--类别--个性化”设置中可以自定义站点名称、站点LOGO等。

👉书架创建:

🔺点击首页”图书--立刻创建“。

🔺接着创建图书的名称、概要、封面、标签等。

🔺可以根据自己的需求选择创建页面,或者添加章节。

🔺接着就正式进入内容的编辑页面。可以看到它和我们常用的编辑器一样,支持的模式还是挺多的,包括字体、对齐、排序、插入等全部都支持。

🔺最让我喜欢的是,它也完美支持我创作所用的Markdown。

🔺并且对于docker-compose.yml文件也是完美支持!

🔺创建好的图书可以一键添加到书架中,展示的效果还是很漂亮的。

🔺首页还有页面更新信息以及个人账户最近的动态。

🔺还能一键切入到夜间(深色)模式。

最后

总体来说,BookStack这个项目作为知识库还是非常不错的,其功能强大且易于使用。它拥有非常直观友好的使用界面,支持创建、编辑和共享文档,并且对多用户多权限也有用非常不错的支持,非常适合团队协作、知识库管理和个人笔记等各种文档管理需求,有需求的小伙伴儿可以试试~

🔺本教程演示的机型是海康存储(HIKVISION)私有云R1,它是一款四盘位高性能的家庭网络存储解决方案,最大支持96TB存储容量。它采用Intel四核处理器 N100,标配一个 DDR5内存插槽与双M.2 SSD设计,强大的性能足够个人及家庭用户的数据备份和文件共享需求。

I/O接口上也是非常丰富,包括3个USB 3.2 Gen2 10Gbps接口、1个 USB3.2 Gen2 Type-C接口及1个HDMI接口(4K 60fps),两个2.5G网口,适应多种扩展需求。

比较有意思的是,它的前面板刚还配备了1块2.86寸、60Hz触控屏,支持多种功能与主题设置,可实时显示温度、CPU占用、风扇、硬盘等状态信息,侧边还配备了透明侧板以及可调控炫彩RGB氛围灯,拥有极高的可玩性。

好了,以上就是今天给大家分享的内容,我是爱分享的Stark-C,如果今天的内容对你有帮助请记得收藏,顺便点点关注,咱们下期再见!谢谢大家~

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

delphi fmx android 自动更新(一)

12.2 android10测试通过 一,安卓权限设置 1,REQUEST_INSTALL_PACKAGES 权限 2,INTERNET 权限 3,READ_EXTERNAL_STORAGE 权限 4,WRITE_EXTERNAL_STORAGE 权限 5,READ_PHONE_STATE 二,安卓下载过程 一般是从http下载安装包 apk 所以,如果是http 则,manife…

《JVM第7课》堆区

文章目录 1.概念2.指定堆大小3.新生代和老年代3.1 新生代3.2 老年代3.3 动画演示 4.分代收集理念 1.概念 堆是JVM中最重要的一块区域,JVM规范中规定所有的对象和数组都应该存放在堆中,在执行字节码指令时,会把创建的对象存入堆中&#xff0c…

【笔记】自动驾驶预测与决策规划_Part6_不确定性感知的决策过程

文章目录 0. 前言1. 部分观测的马尔可夫决策过程1.1 POMDP的思想以及与MDP的联系1.1.1 MDP的过程回顾1.1.2 POMDP定义1.1.3 与MDP的联系及区别POMDP 视角MDP 视角决策次数对最优解的影响 1.2 POMDP的3种常规解法1.2.1 连续状态的“Belief MDP”方法1. 信念状态的定义2. Belief …

Spring Boot框架下的知识管理与多维分类

4 系统设计 系统分析接下来的操作步骤就是系统的设计,这部分内容也是不能马虎对待的。因为生活都是在不断产生变化,人们需求也是在不断改变,开发技术也是在不断升级,所以程序也需要考虑在今后可以方便进行功能扩展,完成…

LeetCode17. 电话号码的字母组合(2024秋季每日一题 59)

给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例 1: 输入:digits “23” 输出:[“…

Nature Methods | 基于流形约束的RNA速度推断精准解析细胞周期动态调节规律

生信碱移 VeloCycle算法 VeloCycle:基于流形约束的RNA速度推断在细胞周期动态中的精准解析 今天给各位老铁们分享一篇于2024年10月31号发表在 Nature Methods [IF: 36.1] 的文章:"Statistical inference with a manifold-constrained RNA velocity…

Spring挖掘:(AOP篇)

学习AOP时,我们首先来了解一下何为AOP 一. 概念 AOP(面向切面编程,Aspect Oriented Programming)是一种编程技术,旨在通过预编译方式或运行期动态代理实现程序功能的统一管理和增强。AOP的主要目标是在不改变原有业务逻辑代码的…

【机器学习】k最近邻分类

📝本文介绍 本文为作者阅读鸢尾花书籍以及一些其他资料的k最近邻分类后,所作笔记 👋作者简介:一个正在积极探索的本科生 📱联系方式:943641266(QQ) 🚪Github地址:https://github.com…

《深度学习》bert自然语言处理框架

目录 一,关于bert框架 1、什么是bert 2、模型结构 自注意力机制: 3、预训练任务 4、双向性 5、微调(Fine-tuning) 6、表现与影响 二、Transformer 1、传统RNN网络计算时存在的问题 1)串联 2)并行…

开源 - Ideal库 - 常用时间转换扩展方法(一)

从事软件开发这么多年,平时也积累了一些方便自己快速开发的帮助类,一直在想着以什么方式分享出来,因此有了这个系列文章,后面我将以《开源-Ideal库》系列文章分享一些我认为比较成熟、比较方便、比较好的代码,如果感觉…

网络安全漏洞管理十大度量指标

前言 当前,网络安全漏洞所带来的风险及产生的后果,影响到网络空间乃至现实世界的方方面面,通信、金融、能源、电力、铁路、医院、水务、航空、制造业等行业各类勒索、数据泄露、供应链、钓鱼等网络安全攻击事件层出不穷。因此,加…

R语言*号标识显著性差异判断组间差异是否具有统计意义

前言 该R代码用于对Iris数据集进行多组比较分析,探讨不同鸢尾花品种在不同测量变量(花萼和花瓣长度与宽度)上的显著性差异。通过将数据转换为长格式,并利用ANOVA和Tukey检验,代码生成了不同品种间的显著性标记&#x…

Web前端PC端开发者工具详细介绍(约10000字保姆级讲解)

1.Elements部分 首先按下F12键即可进入开发者工具页面,以CSDN博客页面为例,如下可以看到右侧是该页面所对应的前端代码。 在Elements部分的Styles模块下可以看页面的各个类别的样式等。 (1)点击.cls可以开启动态修改元素的class&a…

SQL Server 日志记录

SQL Server是一个关系数据库管理系统(RDBMS),旨在有效地存储、组织、检索和操作大量结构化数据。SQL Server日志是监控数据库活动、排查问题和确保数据一致性的基础,这些日志记录了SQL Server实例中发生的事件的时间顺序。它们充当…

Qt QCustomplot 在采集信号领域的应用

文章目录 一、常用的几种开源库:1、QCustomPlot:2、QChart:3、Qwt:QCustomplot 在采集信号领域的应用1、应用实例时域分析频谱分析2.数据筛选和处理其他参考自然界中的物理过程、传感器和传感器网络、电路和电子设备、通信系统等都是模拟信号的来源。通过可视化模拟信号,可以…

【数据结构】堆和二叉树(2)

文章目录 前言一、建堆和堆排序1.堆排序 二、二叉树链式结构的实现1.二叉树的遍历 三、链式二叉树的功能函数1.二叉树结点个数2.二叉树叶子结点个数3.二叉树的高度4.二叉树第k层结点个数5. 二叉树查找值为x的结点6.二叉树销毁 总结 前言 接着上一篇博客,我们继续分…

PDF多功能工具箱 PDF Shaper v14.6

如今对PDF处理的软件很多都是只是单一的功能。PDF Shaper给你完全不同的体验,因为PDF Shaper是一款免费的PDF工具集合的软件。有了PDF Shaper,你以后再也不用下载其他处理PDF的软件了。PDF Shaper的功能有:合并,分割,加…

猫用空气净化器哪个牌子好?求除毛好、噪音小的宠物空气净化器!

换毛季家里孩子不省心,疯狂掉落的猫毛和空气中乱飞的浮毛可把我折磨死了。每天下班都要抽出时间来清理,不然这个家就不能要了。猫毛靠我自己可以打扫,浮毛还得借助宠物空气净化器这种专业工具。所以我最近着手做功课,打算入手一台…

Halcon 矫正图像 图像矫正

目录 原图 矫正后的图像 ​编辑 示例代码 原图 矫正后的图像 示例代码 找ROI部分代码暂无法分享 HomMat2DInvert : []Row_T : []Col_T : []region_features (ROI, rectangularity, Value)if (Value > RectY)HomMat2DInvert : []smallest_rectangle1 (ROI, Row_T, Col…

Spring Boot 3.x 中使用 SpringDoc 2 / Swagger3(详解)

大家好,我是码哥,《Redis 高手心法》作者。 SpringBoot 已经成为 Java 开发的首选框架,今天码哥跟大家聊一聊 Spring Boot3 如何与 Swagger3 集成打造一个牛逼轰轰的接口文档。 为什么要用 Swagger 唐二婷:我最讨厌两件事&#xf…