文章目录
1、Docker-Compose搭建Confluence
(1)Docker-Compose脚本文件
docker-compose-confluence-postgresql.yml
version: '3.8'
services:
confluence:
image: cptactionhank/atlassian-confluence:latest
container_name: confluence
ports:
- "8090:8090"
- "8091:8091"
restart: always
depends_on:
- db
volumes:
- /development/docker/confluence/logs:/opt/atlassian/confluence/logs
- /development/docker/confluence/confluence-data:/var/atlassian/confluence
db:
image: postgres:latest
container_name: confluence-db
ports:
- "5432:5432"
restart: always
environment:
- POSTGRES_PASSWORD=123456
volumes:
- /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'