使用docker-compose部署confluence,自己的wiki

简介: 使用docker-compose部署confluence,自己的wiki

一、搭建过程

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

参考链接:https://confluence.atlassian.com/confkb/confluence-fails-to-start-and-throws-mysql-session-isolation-level-repeatable-read-is-no-longer-supported-error-241568536.html

# 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'
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
Kubernetes Docker Python
Docker 与 Kubernetes 容器化部署核心技术及企业级应用实践全方案解析
本文详解Docker与Kubernetes容器化技术,涵盖概念原理、环境搭建、镜像构建、应用部署及监控扩展,助你掌握企业级容器化方案,提升应用开发与运维效率。
1468 108
|
11月前
|
应用服务中间件 网络安全 nginx
手把手教你使用 Docker 部署 Nginx 教程
本文详解Nginx核心功能与Docker部署优势,涵盖镜像拉取、容器化部署(快速、挂载、Compose)、HTTPS配置及常见问题处理,助力高效搭建稳定Web服务。
4430 4
|
运维 Devops 持续交付
揭秘 Docker 自动部署神器 Websoft9:热门开源软件一键部署
在企业IT建设中,软件部署常面临效率低、易出错等问题。通过Docker与自动化工具,可实现高效、标准化和可追溯的部署流程,提升企业应用交付效率,降低运维门槛,助力中小企业实现自动化部署。
746 5
揭秘 Docker 自动部署神器 Websoft9:热门开源软件一键部署
|
JavaScript 算法 前端开发
【Docker项目实战】使用Docker部署paopao-ce微社区
【Docker项目实战】使用Docker部署paopao-ce微社区
764 84
【Docker项目实战】使用Docker部署paopao-ce微社区
|
设计模式 Linux 开发工具
Docker部署会吗?
本段内容主要介绍了Docker常用命令、Linux基础指令及日志查看方法,还涉及SpringMVC的执行流程、设计模式与注解,适合用于面试中技术能力的展示。
266 0
|
运维 Cloud Native 开发者
Docker:现代化应用开发与部署的神器
Docker:现代化应用开发与部署的神器
362 101
|
存储 Docker Python
docker 部署 sftp
本文介绍SFTP服务的部署与配置,包括users.conf用户配置规则、Docker容器运行命令及上传目录权限说明,重点解析atmoz/sftp镜像的chroot机制与子目录映射,确保用户登录后正确访问/upload目录,并提供Python脚本实现文件上传示例。
912 12
docker 部署 sftp
|
运维 Linux 数据库
基于 Docker 部署 n8n 指南,新手一看就会
本教程详解如何通过 Docker 快速部署开源自动化工具 n8n,适合新手快速上手。内容涵盖官方部署步骤、常见难点及第三方一键部署方案,助你高效搭建自动化工作流平台。
2428 6
|
11月前
|
应用服务中间件 Linux nginx
在虚拟机Docker环境下部署Nginx的步骤。
以上就是在Docker环境下部署Nginx的步骤。需要注意,Docker和Nginix都有很多高级用法和细节需要掌握,以上只是一个基础入门级别的教程。如果你想要更深入地学习和使用它们,请参考官方文档或者其他专业书籍。
500 5