docker环境安装jira(Linux系统)

    最近尝试了在docker环境下安装jira项目管理工具,下面整理了一份,网上很多教程都很多坑,我也是一步步踩着坑出来的,希望以下教程对大家有所帮助。

准备工作

1.mysql数据库,我这边用的是 mysql5.6,有兴趣的可以用更新的,不过对应驱动也要新的。

2.jira的破解包atlassian-extras-3.2.jar,以下是我的百度网盘下载地址,大家也可以从其他地方下载;

链接:https://pan.baidu.com/s/1AdLWd9FpwQDvjTk7TnV2aQ 
提取码:mosf 
3.本人使用的系统是centos7

以下所有的步骤都是在centos7系统环境下进行的,其他版本linux系统应该也可以,具体大家可以尝试。

开始安装docker

关闭虚拟机防火墙:

sudo systemctl stop firewalld
sudo systemctl disable firewalld

更新环境并安装yum-utils工具:

yum update
yum install -y yum-utils

配置docker镜像:

yum-config-manager  --add-repo https://download.docker.com/linux/centos/docker-ce.repo

安装docker:

yum install docker-ce docker-ce-cli containerd.io

开启并重启docker服务:

systemctl enable docker.service
systemctl start docker.service

配置docker日志打印:

vi /etc/docker/daemon.json

把以下jason配置写入到daemon.json文件:

{
  "registry-mirrors": ["https://lpo2jhgo.mirror.aliyuncs.com"],
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2"
}

重启daemon和docker服务

systemctl daemon-reload
systemctl restart docker.service

以上步骤结束后,可以运行docker run hello-world命令,测试安装是否成功,第一次是没有hello-word镜像的,会自动从docker镜像仓库下载,如果打印hello-word则安装成功

可以执行以下命令查看所有本地镜像

docker images

安装mysql

docker仓库中查找mysql

docker search mysql

能查找到对应mysql的镜像

下载mysql镜像,我这边用的5.6

docker pull mysql:5.6

基本启动:(缺点是容器关闭再启动数据会消失)

docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD="设置你的mysql的密码"-d mysql:5.6

高级启动:(将宿主机/mysql/data  挂载到 mysql容器的/var/lib/mysql)

 -v /mysql/data:/var/lib/mysql  

查看是否启动成功:

docker ps -a

以下截图可以看到mysql:5.6启动成功

链接mysql, 以下命令中862b4f532872是我上面截图中的容器id

docker exec -it 862b4f532872 /bin/bash

登录mysql

mysql -uroot -proot

安装jira

安装jira之前可以先创建好数据库,我这边数据库名字就叫“jira”,切记,这里的编码格式一定要是“utf8mb4_bin”,不然下面有些表刷不进来

CREATE DATABASE jira CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
GRANT ALL on jira.* TO 'jira'@'%' IDENTIFIED BY '111111';
flush privileges;

获取jira镜像

docker pull cptactionhank/atlassian-jira-software:8.1.0

启动jira,我这边对外映射端口为8090,大家可以随意,这里也没有对数据持久化,只是个demo

docker run -d -p 8090:8080  --name jira-software -v /etc/localtime:/etc/localtime:ro cptactionhank/atlassian-jira-software:8.1.0

浏览器打开http://192.168.10.69:8090,我本地测试用的内网ip,大家如果是公网,可以公网访问,打开后出现以下页面

可以选择右上角语言,默认英文

然后选择下面“i'll set it up mysself” ,也就是自己设置,点击继续,出现一下页面,由于我的已经配置好,所以网上找个图替代一下

如上图配置好数据库以后测试连接,成功了以后点击“下一步”需要等一会,系统需要刷数据库表到jira数据库,好了以后需要配置一下模式如下图,也是网上找的图:

根据自己情况配置,配置好点“下一步”,出现如下图,需要获取一个许可证:

那我们就点击下面“生成jira试用许可证”,去注册一个试用的key

然后把获取的一串key填入到刚才获取许可证页面

点击“下一步”设置管理员账户:

后面就完成了。

当然我们还需要最关键的一步,破解:

下载破解包,在准备工作那一步骤中已经提供了地址可下载 

链接:https://pan.baidu.com/s/1AdLWd9FpwQDvjTk7TnV2aQ 
提取码:mosf 

把下载好的破解包放到jira安装目录下的lib包中:以下的 cbdq90wz123 是我jira容器的id,大家可以通过“docker ps”命令查看自己的jira容器id。

docker cp atlassian-extras-3.2.jar  cbdq90wz123:/opt/atlassian/jira/atlassian-jira/WEB-INF/lib
docker restart cbdq90wz123

注意:直接copy到lib下面重启服务可能会出现如下异常:

Caused by: java.lang.IllegalStateException: java.io.FileNotFoundException: /opt/atlassian/jira/atlassian-jira/WEB-INF/lib/atlassian-extras-3.2.jar (Permission denied)
        at org.apache.catalina.webresources.AbstractSingleArchiveResourceSet.getArchiveEntry(AbstractSingleArchiveResourceSet.java:100)
        at org.apache.catalina.webresources.AbstractArchiveResourceSet.getResource(AbstractArchiveResourceSet.java:257)
        at org.apache.catalina.webresources.StandardRoot.getResourceInternal(StandardRoot.java:281)
        at org.apache.catalina.webresources.Cache.getResource(Cache.java:62)

这是因为copy过去的atlassian-extras-3.2.jar包没有相关权限,可以通过以下方式授权:

我们先进入到lib目录下执行命令 “ls -l ”查看所有包的权限:

会发现atlassian-extras-3.2.jar包只有一个读的权限,我们需要改成跟其他包一样的权限才行:

执行以下命令以root身份进到容器中:

sudo docker exec -ti -u root cbdq90wz123 bash

进入到刚才的lib目录下执行以下命令

chmod 644 atlassian-extras-3.2.jar

这里的644对应相关权限是“-rw-r--r--”,大家想了解更多可以去参考linux系统下权限的相关知识,这里不多说。

一定要有跟其他包一样的权限才可以,如下图已经给包授权:

好了,权限赋予了,可以重启了,大功告成!

猜你喜欢

转载自blog.csdn.net/xiaomojun/article/details/109572243