docker 部署confluence

1.安装docker的过程就不说了。

2.下载镜像。

docker pull cptactionhank/atlassian-confluence:7.4.0

docker images

3.下载pojie 包。

https://download.csdn.net/download/liudongyang123/90285042https://download.csdn.net/download/liudongyang123/90285042https://download.csdn.net/download/liudongyang123/90285042

4.编写dockerfile文件,重新打包镜像。

bash 复制代码
FROM cptactionhank/atlassian-confluence:7.4.0
 
USER root
 
# 将代理破解包加入容器
COPY "atlassian-agent.jar" /opt/atlassian/confluence/

# 因为我的数据库是 8.4.0,所以需要将对应的数据库驱动也放进去
COPY "mysql-connector-j-8.4.0.jar" /opt/atlassian/confluence/confluence/WEB-INF/lib/
 
# 设置启动加载代理包
RUN echo 'export CATALINA_OPTS="-javaagent:/opt/atlassian/confluence/atlassian-agent.jar ${CATALINA_OPTS}"' >> /opt/atlassian/confluence/bin/setenv.sh

atlassian-agent.jar这个通过我方的链接下载就行。

mysql-connector-j-8.4.0.jar 这个到maven仓库直接下载就行。

执行 docker build -f Dockerfile -t confluence:1.0 .

5.执行启动命令

我在启动的时候报错了,错误日志:

library initialization failed - unable to allocate file descriptor table - out of memory

通过增加这个参数解决,具体的可以看我的链接

library initialization failed - unable to allocate file descriptor table - out of memory -CSDN博客文章浏览阅读442次,点赞5次,收藏4次。(1)LimitNOFILE=infinity虽然是不限制,但是在systemctl版本小于234的时候不生效,查看systemctl版本:systemctl--version。(1)LimitNOFILE=infinity虽然是不限制,但是在systemctl版本小于234的时候不生效,查看systemctl版本:systemctl--version。通过日志描述,一开始认为是内存不够用,但是通过调整内存,不起作用,后来在网上查了查,说是文件句柄数的问题。我是通过3.2的办法解决的。https://ldy616.blog.csdn.net/article/details/145234160https://ldy616.blog.csdn.net/article/details/145234160

--ulimit nofile=2024

bash 复制代码
docker run -d --name confluence --ulimit nofile=2024 -p 28090:8090 -e TZ="Asia/Shanghai" -m 2048M -v /opt/confluence:/var/atlassian/confluence bc14965ddd41

其中 28090是访问的端口号。

6. 配置confluence

通过ip+端口号的方式访问confluence。

在这里可以切换语言,选择中文,然后选择第二个。

秘钥获取方式:

进入到镜像中,执行命令:

6.1.docker exec -it xxx /bin/bash。
6.2.进入 /opt/atlassian/confluence.
6.3.执行代码,其中服务器id,就是浏览器上的服务器id,然后将命令的结果粘贴到浏览器。
bash 复制代码
java -jar atlassian-agent.jar -d -m test@test.com -n BAT -p conf -o http://服务器地址 -s 服务器ID
6.4.配置数据库

这里选择数据库设置页面,数据库链接,选择以字符串的方式进行链接,避免了后面confluence乱码问题:在链接地址上面,加上编码即可:

这里需要注意:

数据库的字符集:要为utf8mb4_bin。

全局事务隔离级别(软件需求):

bash 复制代码
set global transaction isolation level  READ COMMITTED;
bash 复制代码
jdbc:mysql://地址:33060/confluence_data?useUnicode=true&characterEncoding=utf8

7.注意:

7.1 如果你自己没有部署jira,在引导的过程中就不需要选择什么模版,直接选择空白项目创建。

相关推荐
桌面运维家2 小时前
IDV云桌面vDisk机房网络管控访问限制部署方案
运维·服务器·网络
ShineWinsu2 小时前
对于Linux:动静态库的制作与原理的解析—下
linux·运维·服务器·进程·链接·虚拟地址空间·
KKKlucifer4 小时前
国内堡垒机如何打通云网运维安全一体化
运维·安全
wydd99_lll4 小时前
docker特权模式下逃逸
运维·docker·容器
mseaspring5 小时前
一款用于监控跨多台主机 Docker 容器的实时终端
运维·docker·容器
NineData6 小时前
NineData 亮相香港国际创科展 InnoEX 2026,以 AI 加速布局全球市场
运维·数据库·人工智能·ninedata·新闻资讯·玖章算术
heimeiyingwang6 小时前
【架构实战】Kubernetes日志收集:EFK/Loki架构
容器·架构·kubernetes
RisunJan7 小时前
Linux命令-ngrep(方便的数据包匹配和显示工具)
linux·运维·服务器
热爱Liunx的丘丘人7 小时前
Ansible-doc及常用模块
linux·运维·服务器·ansible
tianyuanwo8 小时前
OS/DevOps程序员切入Harness Engineering的入门与进阶指南
运维·devops·harness