confluence 备份与恢复
confluence是技术团队重要的知识资产,为了服务器发生故障后快速恢复,做了一次恢复演练,本文记录备份和恢复步骤。
备份 confluence 每天会自动备份文件到 /var/atlassian/application-data/confluence/backups
新增定时任务,每天将备份的文件拷贝到远程服务器:
1 2 crontab -l 0 0 3 * * ? sh /var/atlassian/application-data/confluence/backups/backup.sh
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 #!/bin/sh scp_linux_path='/var/atlassian/application-data/confluence/backups/' scp_102_uri='root@192.168.9.102:/mnt/tangliu/conf/' scp_log_path='/var/atlassian/application-data/confluence/backups/backup.log' time=$(date +%Y-%m-%d\ %H:%M:%S) filename=`ls $scp_linux_path -t |grep zip |head -n1 |awk '{print $0}'` echo [$time] $scp_linux_path$filename >> $scp_log_path scp $scp_linux_path$filename $scp_102_uri # 清理旧文件 delfile=`ls -l -crt $scp_linux_path/*.zip | awk '{print $9 }' | head -1` count=`ls -l -crt $scp_linux_path/*.zip | awk '{print $9 }' | wc -l` echo "total count $count" >> $scp_log_path if [ $count -gt 7 ] then rm $delfile echo "delete $delfile" >> $scp_log_path fi
恢复步骤 安装 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 # 登录服务器 ssh root@192.168.9.16 ################################################################################## # 启动mysql容器 docker run --name confluence-mysql --restart=always -p 33306:3306 -v /root/soft/docker/confluence-mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=*** -d mysql:5.7.30 # 进入mysql容器 docker exec -it confluence-mysql /bin/bash # 安装vim apt-get update && apt-get install vim # 修改配置 vim /etc/mysql/conf.d/docker.cnf,添加以下内容 max_allowed_packet=256M innodb_log_file_size=2GB character-set-server=utf8 # 或者在外面编辑好docker.cnf之后docker cp进容器指定位置: docker cp docker.cnf confluence-mysql:/etc/mysql/conf.d/docker.cnf # 重启mysql服务 service mysql restart # 再次进入容器,登录 mysql mysql -uroot -p # 创建数据库、指定编码 create database confluence character set 'utf8mb4' collate 'utf8mb4_bin' ; use confluence; SET GLOBAL TRANSACTION ISOLATION LEVEL READ COMMITTED; ################################################################################# # 拉取confluence镜像 docker pull cptactionhank/atlassian-confluence:7.4.0 # 创建目录 mkdir -p /root/soft/docker/confluence # 下载破解文件并解压 https://files.cnblogs.com/files/sanduzxcvbnm/atlassian-agent-v1.2.3.zip # 在/root/soft/docker/confluence目录下创建Dockerfile文件,内容如下: FROM cptactionhank/atlassian-confluence:7.4.0 USER root # 将代理破解包加入容器 COPY "atlassian-agent-v1.2.3/atlassian-agent.jar" /opt/atlassian/confluence/ # 设置启动加载代理包 RUN echo 'export CATALINA_OPTS="-javaagent:/opt/atlassian/confluence/atlassian-agent.jar ${CATALINA_OPTS}"' >> /opt/atlassian/confluence/bin/setenv.sh # 创建新镜像 docker build -t confluence:26dudt . # 启动容器 docker run -v /root/soft/docker/confluence/data:/var/atlassian/confluence -e TZ="Asia/Shanghai" --link confluence-mysql:mysql --privileged=true --restart=always --name="confluence" -d -p 8090:8090 -p 8091:8091 confluence:26dudt
设置和破解
http://192.168.9.16:8090 访问页面,点击右上角切换中文
选择第二项“产品安装”
获取应用选择第一项“Confluence Questions”
授权码获取1 java -jar atlassian-agent.jar -d -m test@test.com -n BAT -p conf -o http://192.168.9.16:8090 -s 服务器id
填入授权码
选择部署类型:单机
数据源选择mysql, 建议使用链接字符串,添加useSSL=false 参数
点击下一步会初始化数据库,需要等一会儿,等进入下一个页面,选择空白站点 (或从备份还原)
若选择空白站点,则需要创建用户,登录,然后右上角选择设置按钮,进入站点管理,选择“备份与还原”, …..后续操作参考从备份还原
若选择从备份还原,则直接在当前页面选择文件,上传并导入 以上两种方式除了选择“上传并导入”,也可以选择从主目录导入,只需要将备份文件上传到16服务器的 /root/soft/docker/confluence/data/restore 目录(映射到容器的/var/atlassian/confluence/restore)目录,然后点击导入即可
耐心等待
安装插件 markdown插件 直接搜索安装
drawio插件 参考:Confluence安装Drawio插件