首页 > 技术文章 > docker 部署 confluence

aboa 2020-11-11 09:29 原文

  • 准备工作
  1. 破解需要的jar包
  2. Mysql 和confluence包数据库
  • 制作镜像
#
wget  https://gitee.com/pengzhile/atlassian-agent/attach_files/283101/download/atlassian-agent-v1.2.3.tar.gz
mv atlassian-agent-v1.2.3.tar.gz /mnt/tmp && cd /mnt/tmp &&  tar zxvf atlassian-agent-v1.2.3.tar.gz
#
vim Dockerfile
FROM cptactionhank/atlassian-confluence:latest
USER root
# 将代理破解包加入容器
COPY "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 Atlassian-conf:7.9  .
  • Mysql准备
#
docker network create confnet 
#
docker run --name=confdb --hostname=confdb --env=MARIADB_MAJOR=10.5 --env='MARIADB_VERSION=1:10.5.7+maria~focal' --env=MYSQL_ROOT_PASSWORD=confluence --env=PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin --env=GOSU_VERSION=1.12 --env=GPG_KEYS=177F4010FE56CA3336300305F1656F24C74CD1D8 --volume=/etc/my.cnf:/etc/mysql/conf.d/docker.cnf --volume=/var/lib/mysql --network=confnet -p 3306:3306 --restart=unless-stopped --log-opt max-size=1g --detach=true docker.io/library/mariadb:latest mysqld
#
docker exec -it confdb /bin/bash
mysql -uroot -pconfluence
create database confdb;
alter database confluence default collate utf8_bin;
flush privileges;
exit;
exit
#
docker restart confdb
#
cat /etc/my.cnf
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_bin
default-storage-engine=INNODB
max_allowed_packet=256M
innodb_log_file_size=2GB
transaction-isolation=READ-COMMITTED
binlog_format=row
skip-host-cache
skip-name-resolve
  • 启动confluence
#
docker run --name=conflence --hostname=conluence --user=root --mac-address=02:42:ac:11:00:07 --env=JAVA_HOME=/usr/lib/jvm/java-1.8-openjdk --env=PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/jvm/java-1.8-openjdk/jre/bin:/usr/lib/jvm/java-1.8-openjdk/bin --env=LANG=C.UTF-8 --env=JAVA_ALPINE_VERSION=8.212.04-r0 --env=CERTIFICATE=/var/atlassian/confluence/certificate --env=JAVA_VERSION=8u212 --env=CONF_INSTALL=/opt/atlassian/confluence --env=CONF_HOME=/var/atlassian/confluence --env=CONF_VERSION=7.9.0 --env=JAVA_CACERTS=/usr/lib/jvm/java-1.8-openjdk/jre/lib/security/cacerts --volume=/data/confluence/:/var/atlassian/confluence --volume=/data/confluence/logs:/opt/atlassian/confluence/logs --volume=/opt/atlassian/confluence/logs --volume=/var/atlassian/confluence --workdir=/var/atlassian/confluence -p 8500:8090 --expose=8091 --restart=unless-stopped --log-opt max-size=1g --detach=true -t Atlassian-conf:7.9 /opt/atlassian/confluence/bin/start-confluence.sh -fg
#
docker ps -a |egrep "conflence|confdb" #确认两个容器状态up
  • 生成授权码
cd /mnt/tmp && java -jar atlassian-agent.jar --help
java -jar atlassian-agent.jar -m admin@outlook.com -n admin@outlook.com -o Google -p conf -s B6OB-WYYS-I8HS-AOUM -d
# 机器码是当你页面配置的产不多时候出来的唯一机器码

推荐阅读