Web知识库应用程序LibreKB
什么是 LibreKB ?
LibreKB
是一款知识库Web
应用程序。免费、开源、自托管,基于PHP/MySQL
。
官方并没有 Docker
镜像,老苏这次图省事,并没有像往常一样构建一个镜像,而是基于 Docker
搭建了一个 LAMP
环境,其中 LAP
由镜像 php:8.1-apache
完成,M
由群晖的 MariaDB 10
完成
之所以这么干,是因为上次应网友要求折腾 acg-faka
没成功,留下了一个现成的环境,干掉之前,怎么也得利用一下,发挥点作用吧
准备工作
建数据库
老苏用了群晖自带的 MariaDB 10
数据库。
在 phpMyAdmin
中创建名为 librekb
的空数据库。
为便于说明,假设数据库密码为
123456
所以根据上面的设置,最后得到的数据库相关的参数如下:
- 数据库主机:
192.168.0.199
- 数据库端口:
3307
; - 数据库用户:
librekb
- 数据库密码:
123456
- 数据库库名:
librekb
,因为勾选了与用户同名;
下载代码
下载地址:https://github.com/michaelstaake/LibreKB/releases
安装
安装镜像
在群晖上以 Docker 方式安装。
之所以没用图形界面安装,是因为后续还要在命令行安装数据库驱动
如果你熟悉命令行,可能用 docker cli
更快捷
1 | # 新建文件夹 librekb 和 子目录 |
也可以用 docker-compose
安装,将下面的内容保存为 docker-compose.yml
文件
1 | version: '3' |
然后执行下面的命令
1 | # 新建文件夹 librekb 和 子目录 |
上传代码
因为还没上传代码,所以在浏览器中输入 http://群晖IP:8954
只能看到错误页
可以在本地解压后上传
代码上传完成后,应该下面👇这个样子的
直接刷新页面是会报错,因为还要修改设置文件 config.php
设置代码的修改
还需要重命名 config.example.php
文件为 config.php
,并修改其中数据库连接和邮件设置,邮件是用于密码重置的
下面👇是一个示例,其中 192.168.0.199
为群晖主机的 IP
,其他参数比较简单,就不一一说明
1 |
|
安装驱动
虽然设置已完成,涉及到数据库的页面会显示错误Connection failed: could not find driver
,因为默认 php:8.1-apache
没有带数据库 PDO MySQL
驱动
所以要执行👇下面的命令来安装,这里假设你容器的名称未做修改,就叫 librekb
1 | # 安装 PDO MySQL 驱动 |
Bug 代码的修改
虽然老苏不是程序员,但是还是觉得 /admin/index.php
应该是有 bug
的,在创建分类时会报错
1 | Warning: Undefined array key "slug" in /var/www/html/admin/index.php on line 161 |
查看了一下代码
而在页面中实际上并没有找到 slug
和 icon
,可能是下一版作者准备添加的内容吧
新建文章时同样也会报错
1 | Warning: Undefined array key "slug" in /var/www/html/admin/index.php on line 377 |
所以老苏修改了一下,其实也就是把报错的几行做了注释,可以在 https://github.com/wbsu2003/synology/blob/main/LibreKB/index.php 找到,替换掉 /admin
目录中的 index.php
即可
运行
上面这些都做完之后,终于可以打开 http://群晖IP:8954/install.php
进行安装了
后端
第一步要创建管理员
安装完成
打开页面 http://群晖IP:8954/admin
,或者直接点页面上的 admin
登录成功后的主界面
为了安全,需要删除 install.php
和 update.php
,不然页面上会有提示
点 Create Category
创建类别
完成之后
可以在该分类下 Create Article
完成之后
前端
回到前端的首页 http://群晖IP:8954
进入分类
查看文档
参考文档
michaelstaake/LibreKB: Knowledge Base Web App - Free, Open Source, Self Hosted, PHP/MySQL
地址:https://github.com/michaelstaake/LibreKBLibreKB
地址:https://librekb.com/Categories - docs.librekb.com
地址:https://docs.librekb.com/