Building a wiki using confluence via docker

用 docker 跑 confluence 来搭建 wiki 系统

Introduction

略。

Steps in details

执行命令:

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
# postgresql db
docker run \
--name postgresdb \
-v /app/wiki_dbdata:/var/lib/postgresql \
-p 5432:5432 \
-e POSTGRES_PASSWORD=1111111 \
-d postgres:13.3
# confluence
# 我这里的部署方法是在 confluence 前面有 LB 的
# 如果在没有 LB 的情况下,可以自己部署一台 nginx
# 在 443 端口起一个虚机 wiki.abc.com
# 反代请求到这台机器的 8090 端口(用 http)
docker run -d \
--name confluence \
-p 8090:8090 \
-p 8091:8091 \
-v /app/confluence_data:/var/atlassian/application-data/confluence \
-e JVM_SUPPORT_RECOMMENDED_ARGS=-javaagent:/opt/atlassian/atlassian-agent.jar \
-e JVM_MAXIMUM_MEMORY=2048m \
-e ATL_PROXY_NAME='wiki.abc.com’ \
-e ATL_PROXY_PORT=443 \
-e ATL_TOMCAT_SCHEME=https \
-e ATL_TOMCAT_SECURE=true \
--link postgresdb:db \
atlassian/confluence:7.9.3

结果出错,容器退出。这是正常的,因为容器里 “/opt/atlassian/atlassian-agent.jar” 还不存在呀

1
2
3
4
5
6
7
8
9
# download
wget \
https://gitee.com/pengzhile/atlassian-agent/attach_files/832832/download/atlassian-agent-v1.3.1.tar.gz
# decompress
tar xzvf atlassian-agent-v1.3.1.tar.gz
# copy atlassian-agent.jar to container confluence
docker cp atlassian-agent.jar confluence:/opt/atlassian/atlassian-agent.jar
# start container confluence again
docker start confluence

这回容器 confluence 能正常启动了

浏览器访问:https://wiki.abc.com,主要是记下有个机器号(假设是 AAAA-BBBB-CCCC-DDDD),这个 license 是根据那个有关系的。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
docker exec -it confluence /bin/bash
# calculate license for team calendar
java -jar /opt/atlassian/atlassian-agent.jar \
-p tc \
-m [email protected] \
-n abc \
-o https://10.0.0.1 \
-s AAAA-BBBB-CCCC-DDDD
# calculate license for question
java -jar /opt/atlassian/atlassian-agent.jar \
-p questions \
-m [email protected] \
-n abc \
-o https://10.0.0.1 \
-s AAAA-BBBB-CCCC-DDDD
# calculate license for confluence
java -jar /opt/atlassian/atlassian-agent.jar \
-p conf \
-m [email protected] \
-n abc \
-o https://10.0.0.1 \
-s AAAA-BBBB-CCCC-DDDD

回到 https://wiki.abc.com 的安装页面,把上一步得到的几个 license 填进去,以后就是正常安装流程了。