安装部署

mkdir -p /data/confluence/data /data/confluence/config

cat docker-compose.yml

version: '3.2'

networks:
    confluence:
        driver: bridge

services:
    mysql:
        image: registry.cn-hangzhou.aliyuncs.com/zhengyu1992/mysql:5.7.29
        container_name: mysql
        restart: always
        environment:
          TZ: Asia/Shanghai
          MYSQL_ROOT_PASSWORD: Blala007!
          MYSQL_DATABASE: confluence
          MYSQL_USER: confluence
          MYSQL_PASSWORD: Blala007!
        command:
            #mysql5.7及以上 版本 默认连接方式 不是以密码形式连接 所以远程连接不方便 改为密码连接
            --default-authentication-plugin=mysql_native_password
            --character-set-server=utf8mb4
            --collation-server=utf8mb4_bin
            --explicit_defaults_for_timestamp=true
            --lower_case_table_names=1
            --skip-ssl
            --max_allowed_packet=128M
            --innodb_log_file_size=256M
            --transaction-isolation=READ-COMMITTED
        volumes:
            - /data/confluence/mysql:/var/lib/mysql
        ports:
            - "13306:3306"
        networks:
            - confluence

    confluence:
        image: registry.cn-hangzhou.aliyuncs.com/zhengyu1992/confluence:7.15.0_m1
        container_name: confluence
        restart: always
        volumes:
            - /data/confluence/data:/var/atlassian/application-data/confluence
            - /data/confluence/config/mysql-connector-java-5.1.47-bin.jar:/opt/atlassian/confluence/confluence/WEB-INF/lib/mysql-connector-java-5.1.47-bin.jar
            - /data/confluence/config/atlassian-extras-2.4.jar:/opt/atlassian/confluence/confluence/WEB-INF/lib/atlassian-extras-decoder-v2-3.4.1.jar
            - /data/confluence/config/server.xml:/opt/atlassian/confluence/conf/server.xml
        ports:
            - "18090:8090"
            - "18091:8091"
        links:
            - "mysql:db"
        networks:
            - confluence

如果是初次启动三个配置文件那行注释掉,待初始化完成后从容器中拷贝出来进行修改

mysql-connector-java-5.1.47-bin.jar

启动完成后打开ip:18090,注意复制Server ID

需要激活才能使用

注册机:confluence_keygen.jar

打开注册机,需要安装java环境,我习惯用的8u251版本(jdk下载地址:https://www.oracle.com/java/technologies/downloads/archive

将容器中的这个文件/opt/atlassian/confluence/confluence/WEB-INF/lib/atlassian-extras-decoder-v2-3.4.1.jar拷贝到本地

docker cp confluence:/opt/atlassian/confluence/confluence/WEB-INF/lib/atlassian-extras-decoder-v2-3.4.1.jar ./

修改文件名为atlassian-extras-2.4.jar

下面的前三行随便输入,Server ID那就是从上面浏览器中复制过来的(BX56-AMI0-EQ5L-PC3J)

点击.patch!找到刚才这个atlassian-extras-2.4.jar

这时候atlassian-extras-2.4.jar所在目录下会产生一个atlassian-extras-2.4.jar.bak

这个带bak的是原始文件,atlassian-extras-2.4.jar是修改过后的文件了

将这个文件复制到/data/confluence/config/atlassian-extras-2.4.jar跟上面的docker-compose.yaml中的磁盘映射对应

点击.gen!获取激活密钥,复制激活密钥

mysql-connector-java-5.1.47-bin.jar放到/data/confluence/config目录下

如果是第一次安装的话需要将server.xml从容器中拷贝出来

docker cp confluence:/opt/atlassian/confluence/conf/server.xml ./

修改server.xml的反向代理链接内容

配置号nginx反向代理




server {
    listen 80;
    server_name zhengyu1992.cn;
    location / {
        return 301 https://zhengyu1992.cn$request_uri;
    }
}
server {
    listen 443  ssl;
    server_name zhengyu1992.cn;
    client_max_body_size 8192m;
    ssl_certificate /etc/nginx/certs/zhengyu1992.cn.pem;
    ssl_certificate_key /etc/nginx/certs/zhengyu1992.cn.key;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_session_timeout      1d;
    ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+ECDSA+AES128:EECDH+aRSA+AES128:RSA+AES128:EECDH+ECDSA+AES256:EECDH+aRSA+AES256:RSA+AES256:EECDH+ECDSA+3DES:EECDH+aRSA+3DES:RSA+3DES:!MD5;
    ssl_prefer_server_ciphers on;

    location / {
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-Server $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://localhost:18090;
    }

}

启动nginx,配置好https证书,做好域名解析

重启confluence容器,如果报最好docker-compose down && docker-compose up -d再次打开初始化页面,这次用域名打开

将上面注册机获取的key复制到下面

点击Next

如果报错That's not a valid license key.

尝试执行ocker-compose down && docker-compose up -d再次重试,如果一直报错,请将上面的bak文件修改后重新patch后gen生成key

正常情况就到这一步,点击Next

数据库类型选择mysql,其他信息就按照我们docker-compose.yml里面设置的填写

测试通过后点击Next,这里会有初始化数据库的时间,根据磁盘性能,快的十几秒,慢的几分钟

初始化完成后后我们到这一步

如果没有接触过confluence可以选择Example Site

如果是接触过confluence可以选择Empty Site

如果是恢复数据的话可以选Restore From Backup

我这里就以Example Site示范了,因为我们没有安装Jira所以就选Manage Users and Groups within Confluence

配置管理员账户密码

到这里就算安装挖成功了,点击start后就可以开始随意发挥了

创建工作空间