Docker 创建 Confluence6.12.2 中文版
目录
1、介绍
1.1、什么是Confluence?
关于 Confluence
网上的介绍有很多,以下摘自百度百科:
Confluence
是一个专业的企业知识管理与协同软件,也可以用于构建企业wiki。使用简单,但它强大的编辑和站点管理特征能够帮助团队成员之间共享信息、文档协作、集体讨论,信息推送。
不建议大家在公司使用破解版。如果不想掏钱,可以尝试开源的 dokuwiki ,功能也非常强大,也进行了 Docker 封装。
2、Confluence的官网在哪里?
3、如何下载安装?
我将 Confluence 6.12.2
直接封装到了 Docker
镜像中,如何安装Docker,请参考这篇文章<Centos7的安装、Docker1.12.3的安装,以及Docker Swarm集群的简单实例>
以下实例中安装 Confluence 6.12.2
,需要用到 MySQL 5.7,如果你已经安装完Docker,可以下载已经做好的 <docker-compose.yml>。文件内容如下,请注意修改/srv/your_folder/my.ini
的位置为你下载后的文件位置:
version: '3'
# https://docs.docker.com/compose/compose-file/
# support Docker version 17.05.0-ce
services:
#################################### zentao ######################################################
##############################
# confluence_mysql
##############################
confluence_mysql:
image: "idoall/mysql:5.7"
hostname: confluence_mysql
ports:
- "6033:3306"
volumes:
- /srv/your_folder/my.ini:/etc/mysql/my.cnf
networks:
- confluence
environment:
- MYSQL_ROOT_PASSWORD=123456
- MYSQL_DATABASE=confluence
- MYSQL_USER=confluence
- MYSQL_PASSWORD=confluence_mshk
- character-set-server=utf8
- collation-server=utf8_bin
deploy:
replicas: 1
update_config:
delay: 1s
restart_policy:
condition: on-failure
##############################
# confluence
# 使用最多不超过50%的CPU和2G内存,总是有25%的CPU以及1G内存可用
##############################
confluence:
image: "idoall/ubuntu16.04-jdk10-confluence:6.12.2"
hostname: confluence
ports:
- "80:8090"
- "8000:8000"
networks:
- confluence
depends_on:
- confluence_mysql
deploy:
replicas: 1
update_config:
delay: 1s
restart_policy:
condition: on-failure
resources:
limits:
cpus: '0.50'
memory: 2048M
reservations:
cpus: '0.25'
memory: 1024M
# 统一网络设置
networks:
confluence:
driver: overlay
我们运行以下命令,使用 Docker Stack
的编排服务,来创建 Confluence 6.12.2
以及 MySQL 5.7
服务:
$ docker stack deploy -c docker-compose.yml mshk_confluence
Creating network mshk_confluence_confluence
Creating service mshk_confluence_confluence
Creating service mshk_confluence_confluence_mysql
启动成功后,使用下面的命令,可以看到 Confluence 6.12.2
和 MySQL 5.7
的服务运行状态:
$ docker service ls
ID NAME MODE REPLICAS IMAGE PORTS
0nwtpmxsdqjp mshk_confluence_confluence replicated 1/1 idoall/ubuntu16.04-jdk10-confluence:6.12.2 *:80->8090/tcp, *:8000->8000/tcp
pm4ze5dys0ch mshk_confluence_confluence_mysql replicated 1/1 idoall/mysql:5.7 *:6033->3306/tcp
再等几分钟以后,在<docker-compose.yml>文件中,可以看到,我们对 Confluence
做了80->8090端口的映射,所以打开:http://localhost ,能够看到如下页面,说明运行成功:
这时的等待是因为
Confluence
的服务需要启动,MySQL 5.7
的数据库需要创建。

4、对 Confluence 进行配置
4.1、设置 Confluence
选择产品安装
,下一步。

4.2、获取应用
获取应用处,如果已经购买了应用授权,在下面选中这些应用,系统将自动为您安装,如果没有,直接点击下一步。

4.3、授权码
点击试用授权
。会跳转到 Atlassian
的官网。

注册一个帐号后,会看到如下界面,选择Confluence (Server)
,输入Organization
,确认 Server ID
和上张图片一致,然后点击 Generate License
:

会看到一个弹窗,确认你是否要在指定的服务器上安装许可,点击Yes
,然后会自动返回到我们的 Confluence
容器的服务中,并且带上已经可以试用的许可,然后点击 下一步
,如下图:

4.4、设置数据库
在设置数据库的地方,选择 我自己的数据库
,然后点击下一步。

选择 MySql
,输入 我们在<docker-compose.yml>中,配置的主机名 confluence_mysql
,端口 3306
,数据库名称 confluence
,用户名 confluence
,密码 confluence_mshk
。
可以点击 测试连接
,能够看到 成功! 成功连接数据库
,最后点击下一步,会花费一些时间,稍等一会即将配置成功。

4.5、加载选项
如果是第一次使用,建议点击示范站点
。

4.6、配置 Confluence 用户组和用户
在 配置用户管理 处,选择在Confluence中管理用户和组
。

在 配置系统管理员账户 处,输入 全名
、邮件
、密码
,点击下一步。

4.7、完成设置
如果一切顺利,能够看到下面图片的页面,恭喜你配置已经完成,可以开始愉快的 Confluence
之旅。

5、对 Confluence 进行破解
Confluence
的破解文件已经打包到了 Docker 中。
先用 docker ps
命令,查看服务生成的容器名称,本文测试时生成的容器名称是 mshk_confluence_confluence.1.ktk5t90e9xgro04bq9so3p4at
:
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a7b8e7bcea0b idoall/ubuntu16.04-jdk10-confluence:6.12.2 "/bin/bash -e /init/…" 3 minutes ago Up 2 minutes 8000/tcp, 8090/tcp mshk_confluence_confluence.1.ktk5t90e9xgro04bq9so3p4at
c2d86a9661ca idoall/mysql:5.7 "docker-entrypoint.s…" 10 minutes ago Up 10 minutes 3306/tcp mshk_confluence_confluence_mysql.1.kt5bthbn8gpqyi18nlox84fdp
Docker
编排服务后的容器名称比较长,把容器名称赋值到一个变量CONTAINERNAME
,这样后面使用起来会很方便。
将要破解的文件、破解工具复制到本地,并将要破解的文件atlassian-extras-decoder-v2-3.4.1.jar
重命名为atlassian-extras-2.4.jar
:
$ CONTAINERNAME=mshk_confluence_confluence.1.ktk5t90e9xgro04bq9so3p4at
$ docker cp $CONTAINERNAME:/opt/atlassian/confluence/confluence/WEB-INF/lib/atlassian-extras-decoder-v2-3.4.1.jar ./atlassian-extras-2.4.jar
$ docker cp $CONTAINERNAME:/usr/src/_confluence/confluence_keygen.jar .
在当前目录,运行以下命令,打开破解文件,在弹出的破解文件窗口中,点击.patch!
,找到刚才从容器中复制出来的atlassian-extras-2.4.jar
文件。破解成功后,在破解工具的左下方,会提示jar successfully patched
,这时不要着急关闭破解文件的窗口,后面还会用到。
$ java -jar confluence_keygen.jar

停止 Confluence
容器运行的服务;同时将 Confluence
容器的原文件 atlassian-extras-decoder-v2-3.4.1.jar
重命名为atlassian-extras-decoder-v2-3.4.1.jar.bak
做备份;再将我们破解后的atlassian-extras-2.4.jar
文件,复制到容器中重命名为atlassian-extras-decoder-v2-3.4.1.jar
;启动容器;下面是本次操作的命令:
$ docker exec $CONTAINERNAME sh -c 'service confluence stop;mv /opt/atlassian/confluence/confluence/WEB-INF/lib/atlassian-extras-decoder-v2-3.4.1.jar /opt/atlassian/confluence/confluence/WEB-INF/lib/atlassian-extras-decoder-v2-3.4.1.jar.bak'
$ docker cp atlassian-extras-2.4.jar $CONTAINERNAME:/opt/atlassian/confluence/confluence/WEB-INF/lib/atlassian-extras-decoder-v2-3.4.1.jar
$ docker exec $CONTAINERNAME sh -c 'service confluence start'
这时在浏览器,输入 http://localhost
,打开 Confluence
,重新进行本文中4.1-4.3章节
的操作步骤。在获取授权码时,回到我们刚才打开的破解文件窗口,输入Name
、Email
、Organization
、Server ID
,点击.gen!
,生成授权码,并将授权码复制到页面中,点击下一步。


重复本文中 4.4-4.7章节
中的步骤,完成 Confluence
的安装。用管理员帐号登录以后,在右上角的设置->一般配置
,左侧导航的最下方找到授权细节
,可以看到授权日到了2337年,破解成功。

6、FAQ
6.1、Confluence配置QQ企业邮件服务器
刚开始测试时不成功,勾选TLS设置587端口,可以发送成功。
6.2、Confluence如何做持久化
在docker重启后内容会丢失,可以设置本地一个目录,挂载到容器中的/var/atlassian/application-data
目录,然后执行以下命令,设置容器的目录权限,并重启服务。
$ docker exec $CONTAINERNAME sh -c 'service confluence stop;chown -R confluence:confluence /var/atlassian/application-data;service confluence start'
博文作者:迦壹
博客地址:Docker 创建 Confluence6.12.2 中文版
转载声明:可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明,谢谢合作!
比特币地址:1KdgydfKMcFVpicj5w4vyn3T88dwjBst6Y
以太坊地址:0xbB0a92d634D7b9Ac69079ed0e521CC2e0a97c420