Confluence 是一款强大的知识库管理工具,在团队合作中发挥着重要作用。
1. 服务启动
首先创建对应的目录用于映射数据实现持久化。
mkdir -p /usr/local/dockerdata/confluence
完成后通过下述命令启动服务:
docker run -d --privileged=true \
-p 8090:8090 \
-v /usr/local/dockerdata/confluence:/var/confluence \
--name confluence-srv \
-e TZ='Asia/Shanghai' \
haxqer/confluence:8.9.1
2. 插件破译
启动服务之后访问 ip:8090 页面,将下述 <you-server-id> 替换为页面对应的 server-id 并在服务上执行。
docker exec confluence-srv java -jar /var/agent/atlassian-agent.jar \
-d \
-p conf \
-m Hello@world.com \
-n Hello@world.com \
-o your-org \
-s <you-server-id>
3. 数据连接
需要注意 confluence 使用 MySQL 存储数据,但其对应的 MySQL 库有下述两个要求。
- 字符集与排序规则需要为
utf8mb4和utf8mb4_bin。 - 数据库的事务隔离级别需要为
READ_COMMITTED。
由于 MySQL 默认的事务隔离级别为 REPEATABLE_READ,因此我们需要进行修改,这边提供两种修改方式,第一种为修改配置文件,第二种为通过命令但重启 MySQL 后将会失效。
方式一在 MySQL 的配置文件中添加下述配置修改事务隔离级别,完成后重启服务即可。
transaction-isolation = READ-COMMITTED
方式二通过下述 SQL 修改全局的事务隔离级别,但在 MySQL 重启后将会失效。
SET GLOBAL TRANSACTION ISOLATION LEVEL READ COMMITTED;