【Docker学习】17、Docker-Compose 搭建 Confluence(最新版) Wiki 环境

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'

微信公众号

每天Get一个小技巧

Guess you like

Origin blog.csdn.net/qq_38762237/article/details/111955414