v4/install/index.md
兼容性
Kuboard v4 相较于 v3 主要差异如下:
Kuboard v4 需要使用数据库作为存储,支持的数据库类型有:
您也可以参考 快速开始 使用 docker compose 迅速拉起一个 Kuboard 实例用于测试。
在 MySQL(或者 MariaDB)中创建数据库,建库脚本如下:
CREATE DATABASE kuboard DEFAULT CHARACTER SET = 'utf8mb4' DEFAULT COLLATE = 'utf8mb4_unicode_ci';
create user 'kuboard'@'%' identified by 'Kuboard123';
grant all privileges on kuboard.* to 'kuboard'@'%';
FLUSH PRIVILEGES;
在 OpenGauss 命令行中创建数据库,建库脚本如下:
CREATE USER kuboard PASSWORD 'Kuboard123';
CREATE DATABASE kuboard OWNER=kuboard ENCODING='UTF8' DBCOMPATIBILITY='PG';
\c kuboard
CREATE SCHEMA kuboard AUTHORIZATION kuboard;
如果使用 OpenGauss 数据库,Kuboard 将使用 postgre SQL 语法操作数据库
使用 docker run 启动 Kuboard 容器:
使用 MYSQL 时,启动 Kuboard 的脚本如下:
docker run -d \
--restart=unless-stopped \
--name=kuboard \
-p 80:80/tcp \
-e TZ="Asia/Shanghai" \
-e DB_DRIVER=com.mysql.cj.jdbc.Driver \
-e DB_URL="jdbc:mysql://10.99.0.8:3306/kuboard?serverTimezone=Asia/Shanghai" \
-e DB_USERNAME=kuboard \
-e DB_PASSWORD=Kuboard123 \
-v ./kuboard-log:/app/logs \
swr.cn-east-2.myhuaweicloud.com/kuboard/kuboard:v4
# eipwork/kuboard:v4
使用 MariaDB 时,启动 Kuboard 的脚本如下:
docker run -d \
--restart=unless-stopped \
--name=kuboard \
-p 80:80/tcp \
-e TZ="Asia/Shanghai" \
-e DB_DRIVER=org.mariadb.jdbc.Driver \
-e DB_URL="jdbc:mariadb://10.99.0.8:3306/kuboard?&timezone=Asia/Shanghai" \
-e DB_USERNAME=kuboard \
-e DB_PASSWORD=Kuboard123 \
-v ./kuboard-log:/app/logs \
swr.cn-east-2.myhuaweicloud.com/kuboard/kuboard:v4
# eipwork/kuboard:v4
使用 OpenGauss 时,启动 Kuboard 的脚本如下:
docker run -d \
--restart=unless-stopped \
--name=kuboard \
-p 80:80/tcp \
-e TZ="Asia/Shanghai" \
-e DB_DRIVER=org.postgresql.Driver \
-e DB_URL="jdbc:postgresql://10.99.0.8:5432/kuboard?currentSchema=kuboard&characterEncoding=UTF8" \
-e DB_USERNAME=kuboard \
-e DB_PASSWORD=Kuboard123 \
-v ./kuboard-log:/app/logs \
swr.cn-east-2.myhuaweicloud.com/kuboard/kuboard:v4
# eipwork/kuboard:v4
::: tip 参数说明
TZ 指定 JDK 的时区;DB_DRIVER 指定数据库驱动类,可选值有三个:
com.mysql.cj.jdbc.Driverorg.mariadb.jdbc.Driverorg.postgresql.DriverDB_URL 指定 JDBC 连接 url,参数中的主机地址不用写 localhost,应该直接指定数据库的 IP 地址,例如,样例中使用了数据库的 IP 地址 10.99.0.8;JDBC 连接 url 应与前一个步骤中创建的数据库相匹配;通常,您只需替换样例中的 IP 地址以及端口号即可;DB_USERNAME 指定数据库用户,应该与前一个步骤中创建的数据库用户名相同;DB_PASSWORD 指定数据库密码,应该与前一个步骤中创建的数据库密码相同;
:::在浏览器打开 Kuboard 的地址,例如:
http://10.99.0.10/login
Kuboard 的登录界面如下图所示:
登录 Kuboard 界面:
adminKuboard123此时您已完成了 Kuboard v4 的安装。后续请在 Kuboard 界面上执行如下操作:
admin 的密码Kuboard v4 通过 webhook 接口与外部用户库(例如 LDAP)集成,具体请参考 https://github.com/eip-work/kuboard-v4-ldap-example
Kuboard V4 支持高可用部署时,需要增加 redis 分布式缓存,参考部署架构图如下所示:
<p> </p>用户应该自行提供如下设施:
默认情况下,Kuboard 在单副本模式下使用 Caffeine 内存缓存,高可用部署模式下,通过如下环境变量可以指定 Kuboard 使用分布式 Redis 缓存。
KUBOARD_CACHE_PROVIDER 用于指定缓存提供方式,有如下可选值,非必填:
caffeine,默认值,使用 Caffeine 内存缓存,只能用在 Kuboard 的单副本模式下;redis,使用分布式缓存 RedisKUBOARD_CACHE_REDIS_MODE 用于指定 Redis 的连接模式,有如下可选值,非必填:
standalone,默认值,Redis Standalone 模式sentinel,Redis 哨兵模式cluster,Redis 集群模式KUBOARD_CACHE_REDIS_SENTINEL_MASTER 用于指定 Redis Sentinel 模式下 master 名称,非必填,默认值为 masterKUBOARD_CACHE_REDIS_NODES 用于指定 Redis 节点信息,多个节点时用 , 分割,非必填,默认值为 localhost:6379,如果填写,可参考如下例子:
standalone 模式下,只填一个端口地址,例如 10.99.0.8:6379sentinel 模式下,填写 Redis 所有哨兵的端口地址,例如: 10.99.0.10:6379,10.99.0.11:6379,10.99.0.12:6379cluster 模式下,填写 Redis 所有节点的端口地址,例如: 10.99.0.20:6379,10.99.0.21:6379,10.99.0.22:6379KUBOARD_CACHE_REDIS_PASSWORD 用于指定连接 Redis 时的密码,非必填,默认值为空字符串KUBOARD_CACHE_REDIS_DATABASE 用于指定连接 Redis 时的 Redis 数据库编号,非必填,默认值为 0