文章目录
- 1、Docker-Compose搭建Confluence
-
-
- (1)Docker-Compose脚本文件
- (2)创建Confluence、Postgres容器
- (3)未授权报错问题
- (4)破解Confluence
- (5)配置Postgres数据库(与MySQL二选一)
- (6)配置MySQL数据库(与Postgres二选一)
-
- 技术分享区
1、Docker-Compose搭建Confluence
(1)Docker-Compose脚本文件
docker-compose-confluence-postgresql.yml
version: '3.8'
services:confluence:image: cptactionhank/atlassian-confluence:latestcontainer_name: confluenceports:- "8090:8090"- "8091:8091"restart: alwaysdepends_on:- dbvolumes:- /development/docker/confluence/logs:/opt/atlassian/confluence/logs- /development/docker/confluence/confluence-data:/var/atlassian/confluencedb:image: postgres:latestcontainer_name: confluence-dbports:- "5432:5432"restart: alwaysenvironment:- POSTGRES_PASSWORD=123456volumes:- /development/docker/confluence/pgsql-data:/var/lib/postgresql/data
(2)创建Confluence、Postgres容器
创建并启动
docker-compose -f /development/docker/docker-compose-confluence-postgresql.yml up -d
停止并删除
docker-compose -f /development/docker/docker-compose-confluence-postgresql.yml down
(3)未授权报错问题
启动之后发现报错
检查创建的相关挂载文件,发现confluence-data文件夹的权限不对,不是root/root,需要的是daemon/daemon,正常 docker 和外部交互都是daemon用户
修改文件夹权限为daemon/daemon
chown -R daemon.daemon confluence-data
然后重启容器
docker-compose -f /development/docker/docker-compose-confluence-postgresql.yml restart
(4)破解Confluence
从容器复制jar
docker cp confluence:/opt/atlassian/confluence/confluence/WEB-INF/lib/atlassian-extras-decoder-v2-3.4.1.jar ./atlassian-extras-2.4.jar
下载到本地
sz atlassian-extras-2.4.jar
下载破解文件,我直接放在CSDN下载了,然后在 Confluence 找到 Server ID
运行confluence_keygen.jar,并粘贴Server ID
java -jar confluence_keygen.jar
然后点击 .patch!
,选择从服务器下载下来的atlassian-extras-2.4.jar
继续点击第一个按钮,.gen!
,会生成一个授权码,保存好授权码,例如
这是我的,你复制没有用,我是举例说明
AAABKw0ODAoPeJxtkEtLAzEQgO/5FQHPW/ahKELANImwuI/iblc9pulUA2lakuxi/71p115EmMu8P
r6ZmzfYYg4KFynO8sfbLAZmXY/zNE8RB6+cPgZ9sIQd7M6MYBWgZtxvwLW7tQfnSZIh5kCeh7gMQ
M6bSZYnRYriTpAqNHIPpAdjPEikImcRi3oCEtwI1yFRS22ItpP2emPgySuwsLAGiUma8YInOxkRM
6HSse+hPx3hgmdtXYtXVtIKRZANYGVUFd9H7U6zVlHcn7XyuxlwPYKZ0QdwzWELnqSoEw35aNe4p
i8C1wJT3FGOV7ThdIFa9ymt9rOMbgbd6WUlcC9ojTpwE7iSkyXnQ1Ks31lSDTxNHvLnEv3axm5V8
mv2v9xqdOpLevjzyx//H4kOMCwCFCaF0frwtkpx5Q9Id/yJkNOrbYk6AhQ68LOLTtmHJEe28jY6k
a5f7CFrLA==X02f3
然后把atlassian-extras-2.4.jar
文件上传到服务器,并复制到Confluence容器中,替换到原本的文件
docker cp ./atlassian-extras-2.4.jar confluence:/opt/atlassian/confluence/confluence/WEB-INF/lib/atlassian-extras-decoder-v2-3.4.1.jar
然后重启容器
docker-compose -f /development/docker/docker-compose-confluence-postgresql.yml restart
IP:8090 访问之后,还是之前的授权界面,我们把生成的授权码粘贴在上面即可,注意使用Ctrl + A、Ctrl + C 复制粘贴,手动选中复制粘贴容易出问题,到此破解完后
(5)配置Postgres数据库(与MySQL二选一)
进入Postgres容器
docker exec -it confluence-db bash
依次执行以下命令
psql -U postgres
\l
CREATE DATABASE confluence WITH OWNER postgres;
\q
然后重启容器
docker-compose -f /development/docker/docker-compose-confluence-postgresql.yml restart
(6)配置MySQL数据库(与Postgres二选一)
这里我们需要增加一个jar到容器内部
docker cp ./mysql-connector-java-8.0.17.jar confluence:/opt/atlassian/confluence/confluence/WEB-INF/lib/mysql-connector-java-8.0.17.jar
然后重启Confluence容器
jdbc:mysql://localhost:3306/confluence?serverTimezone=UTC&sessionVariables=transaction_isolation='READ-COMMITTED'