一、搭建过程
1.1 基础准备
1.1.1 拉取docker镜像,我们选择的版本是 6.15.1-alpine
mkdir ./confluence
cd ./confluence
docker pull atlassian/confluence-server:6.15.1-alpine
1.1.2 准备好mysql的驱动,我们使用的mysql版本是5.7
wget https://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.47/mysql-connector-java-5.1.47.jar
# mysql8.0.20驱动: wget https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.20/mysql-connector-java-8.0.20.jar
1.1.3 准备好docker-compose.yml
version: '3'
services:
confluence:
image: atlassian/confluence-server:6.15.1-alpine
container_name: confluence
restart: always
ports:
- 8090:8090
- 8091:8091
networks:
- traefik
volumes:
- ./data:/var/atlassian/application-data/confluence # 主目录
# - ./atlassian-extras-decoder-v2-3.4.1.jar:/opt/atlassian/confluence/confluence/WEB-INF/lib/atlassian-extras-decoder-v2-3.4.1.jar # 如果你有已经坡姐后的jar包,这里直接挂在进去即可启动
- ./mysql-connector-java-5.1.47.jar:/opt/atlassian/confluence/confluence/WEB-INF/lib/mysql-connector-java-5.1.47.jar
# - ./server.xml:/opt/atlassian/confluence/conf/server.xml
networks:
traefik:
external: true
1.1.4 在准备好的 msyql 中创建数据库
-- drop database confluence;
create database confluence DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;
1.1.5 下载好工具
# 下载链接:
http://image1.baishapuu.com/confluence破解工具.zip
1.2 部署
1.2.1 启动
# 创建网卡
docker network create traefik
# 启动
docker-compose up -d
# 查看日志
docker logs -tf --tail 300 confluence
# 访问地址: yourIp:8090
1.2.2 复制出 atlassian 的 jar 包
docker cp confluence:/opt/atlassian/confluence/confluence/WEB-INF/lib/atlassian-extras-decoder-v2-3.4.1.jar ./atlassian-extras-2.4.jar
- 注意复制出来的文件名必须为 atlassian-extras-2.4.jar,因为工具中指定了此文件名;
1.2.3 运行工具,如图:
- 成功后,会在原目录下出现atlassian-extras-2.4.back 备份文件,并生成了一个新的处理后的 atlassian-extras-2.4.jar
1.2.4 复制处理后的jar包回容器中
docker cp ./atlassian-extras-2.4.jar confluence:/opt/atlassian/confluence/confluence/WEB-INF/lib/atlassian-extras-decoder-v2-3.4.1.jar
# 重启
docker restart confluence
1.2.5 剩下的按照页面提示一步一步设置即可
注意:mysql连接时,需要设置事务隔离级别 READ-COMMITTED
# mysql 5
jdbc:mysql://172.16.244.49:3306/confluence?useSSL=false&sessionVariables=tx_isolation='READ-COMMITTED'
二、数据备份与迁移
2.1 参考链接:
https://www.cwiki.us/display/CONF6EN/Migrating+Confluence+Between+Servers#space-menu-link-content
https://confluence.atlassian.com/conf615/migrating-confluence-between-servers-967338806.html
# 我的迁移过程
1、备份mysql数据库;
2、备份mysql驱动;
3、备份主目录(本文档安装的挂载目录 “- ./data:/var/atlassian/application-data/confluence”)
4、备份server.xml(容器目录: /opt/atlassian/confluence/conf/server.xml)
5、在新机器上准备好安装过程需要的东西,以及备份的东西拿过去准备覆盖;
6、如果需要迁移数据库,可以直接修改配置文件:<confluence.home>/confluence.cfg.xml
- 迁移后,日志显示启动成功,但页面任然无法访问,此过程大概需要几分钟左右
2.2 关闭confluence自带每日备份任务
2.3 手动备份脚本 + crontab定时任务
备份数据库,主目录挂载出来即可;
三、导出PDF
注意:confluence导出PDF仅支持一种字体,且需要自己手动上传安装;(可以从系统目录C:\Windows\Fonts 中复制出来)
四、配置邮件服务器
参考链接:https://qinjiangbo.com/mail-server-configuration-of-confluence.html
说明:25、465端口不行,再试试587端口也是可以的
五、版本升级
Confluence7 + Mysql8:
CREATE DATABASE xxxxxxConfluence CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
# 隔离级别的设置, mysql 8 的区别:
sessionVariables=transaction_isolation='READ-COMMITTED'