赞
踩
Jira 是一个由 Atlassian 开发的功能强大的项目管理和问题跟踪工具,广泛应用于软件开发、项目管理、缺陷跟踪和服务管理等领域。Jira 的多功能性和高度的可定制性使其成为一个强大的工具,适用于各种规模的团队和项目。无论是软件开发、项目管理、服务管理还是业务流程管理,Jira 都能提供有效的解决方案,帮助团队提高效率、优化流程、确保项目成功。
方便起见,直接使用了docker来部署jira。下面提供了一个安装docker的脚本,包含了部分优化配置,docker的版本可以任意选择,应该影响不大。如下:
[root@kube-master ~]# cat install_docker.sh
#!/bin/bash
export VERSION=19.03
curl -fsSL "https://get.docker.com/" | bash -s -- --mirror Aliyun
mkdir -p /etc/docker/
cat>/etc/docker/daemon.json<<EOF
{
"exec-opts": ["native.cgroupdriver=systemd"],
"registry-mirrors": [
"https://fz5yth0r.mirror.aliyuncs.com",
"http://hub-mirror.c.163.com/",
"https://docker.mirrors.ustc.edu.cn/",
"https://registry.docker-cn.com"
],
"insecure-registries":["221.239.33.162:11882"],
"data-root":"/data/docker",
"storage-driver": "overlay2",
"storage-opts": [
"overlay2.override_kernel_check=true"
],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m",
"max-file": "3"
}
}
EOF
yum install -y epel-release bash-completion && \
cp /usr/share/bash-completion/completions/docker /etc/bash_completion.d/
mkdir -p /etc/systemd/system/docker.service.d/
cat>/etc/systemd/system/docker.service.d/10-docker.conf<<EOF
[Service]
ExecStartPost=/sbin/iptables -I FORWARD -s 0.0.0.0/0 -j ACCEPT
ExecStopPost=/bin/bash -c '/sbin/iptables -D FORWARD -s 0.0.0.0/0 -j ACCEPT &> /dev/null || :'
EOF
systemctl enable --now docker
docker info
[root@kube-master ~]# sh install_docker.sh
系统准备包括关闭selinux和firewalld等,并安装了一些常见的工具(方便起见,安装了很多,可能用不上)。
[root@kube-master ~]# cat init_env.sh
systemctl disable --now firewalld NetworkManager
setenforce 0
sed -ri '/^[^#]*SELINUX=/s#=.+$#=disabled#' /etc/selinux/config
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtim
swapoff -a && sysctl -w vm.swappiness=0
sed -ri '/^[^#]*swap/s@^@#@' /etc/fstab
yum install epel-release -y
yum install -y \
curl \
wget \
vim \
git \
conntrack-tools \
psmisc \
nfs-utils \
jq \
socat \
bash-completion \
ipset \
ipvsadm \
conntrack \
libseccomp \
net-tools \
crontabs \
sysstat \
unzip \
bind-utils \
tcpdump \
telnet \
lsof \
htop \
ntpdate
[root@kube-master ~]# sh ini_env.sh
[root@kube-master ~]# ntpdate ntp1.aliyun.com ##同步时间
使用jira的版本为8.16.1,原因是这个版本可以破解。其他版本可自行尝试。
[root@kube-master ~]# mkdir -p /data/jira
[root@kube-master ~]# docker run -d --name jira -p 8080:8080 -v /data/jira/:/var/atlassian/application-data/jira atlassian/jira-software:8.16.1
e2f19103cbc298fcd2c6aa48e723589fae770984291066d594d9f0d5314d241d
[root@kube-master ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e2f19103cbc2 atlassian/jira-software:8.16.1 "/usr/bin/tini -- /e…" 19 seconds ago Up 8 seconds 0.0.0.0:8080->8080/tcp jira
接下来通过访问浏览器进行相关配置
访问地址http://192.168.10.128:8080
,自己的服务器地址+8080 端口
将语言选择为中文,并选择通过自己来设置它。接下来会设置数据库,我选择了使用其他数据库。支持的数据库种类很多,常见的MySQL、Oracle、PostgreSQL等都是支持的,大家可以自行选择。但是后续的坑需要自己摸索解决。此处我选择了使用MySQL 8.0 版本(5.7也支持,但是后续我官网找 mysql-connect驱动时没有找到5.7版本的)。
方便起见,也使用容器的方式安装。
[root@kube-master data]# mkdir -p /data/mysql/
[root@kube-master data]# docker run -e "MYSQL_ROOT_PASSWORD=123456" -d --name mysql -p 3306:3306 -v /data/mysql:/var/lib/mysql mysql:8.0.22
99ba41ced06b889a1a06287580da001baf9ede8449f2dc37012db6fe4294d8ed
先在MySQL数据库中创建一个jira的普通用户:
#进入容器
[root@kube-master data]# docker exec -it mysql bash
#进入mysql
root@99ba41ced06b:/# mysql -uroot -p123456
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.22 MySQL Community Server - GPL
Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
#创建用户
mysql> CREATE USER 'jira'@'%' IDENTIFIED BY 'jira@123';
Query OK, 0 rows affected (0.01 sec)
#为该用户赋权jria
mysql> GRANT ALL PRIVILEGES ON jiradb.* TO 'jira'@'%';
Query OK, 0 rows affected (0.00 sec)
创建数据库 jiradb
mysql> CREATE DATABASE jiradb CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
Query OK, 1 row affected (0.00 sec)
接下来继续到浏览器页面进行配置:
可以看到上面的测试不能通过,jira提示:找不到驱动:com.mysql.cj.jdbc.Driver
需要为jira提供 mysql-connect驱动。
下载mysql-connect驱动
下载地址:https://downloads.mysql.com/archives/c-j/,然后下载对应版本的platform independent (独立的)驱动。
下载完成后,上传到服务器,先解压然后将jar包并拷贝到 jira 容器里(临时测试方法),如下:
[root@kube-master ~]# mkdir mysql-connector
[root@kube-master ~]# tar -xvf mysql-connector-java-8.0.22.tar.gz -C mysql-connector
[root@kube-master ~]# ll mysql-connector/mysql-connector-java-8.0.22/mysql-connector-java-8.0.22.jar
-rw-r--r-- 1 root root 2389216 Sep 11 2020 mysql-connector/mysql-connector-java-8.0.22/mysql-connector-java-8.0.22.jar
[root@kube-master ~]# docker cp mysql-connector/mysql-connector-java-8.0.22/mysql-connector-java-8.0.22.jar jira:/opt/atlassian/jira/lib
# 然后重启jira容器
[root@kube-master ~]# docker restart jira
然后继续配置相关信息(如实填写):
测试连接通过后,点击下一步就开始初始化数据库之后就完成了(需要等待一段时间)。
不知道为啥就又变成英文了,先不管。直接点击下一步
如上图。到这里就需要激活了。激活Jira 步骤大致如下:
/var/atlassian/application-data/jira
目录,也就是jira挂载目录/opt/atlassian/jira/bin/setenv.sh
最后添加一行指令,启动加载代理包激活工具是一个 jar包:atlassian-agent.jar 下载链接:https://files-cdn.cnblogs.com/files/sanduzxcvbnm/atlassian-agent-v1.2.3.zip
解压上传至相应目录
[root@kube-master ~]# unzip atlassian-agent-v1.2.3.zip
Archive: atlassian-agent-v1.2.3.zip
creating: atlassian-agent-v1.2.3/
inflating: atlassian-agent-v1.2.3/LICENSE
inflating: atlassian-agent-v1.2.3/README.pdf
inflating: atlassian-agent-v1.2.3/atlassian-agent.jar
extracting: atlassian-agent-v1.2.3/shasum.txt
#直接将激活工具拷贝到容器挂载目录
[root@kube-master ~]# docker cp atlassian-agent-v1.2.3/atlassian-agent.jar jira:/opt/atlassian/jira/
[root@kube-master ~]# docker exec -it jira bash
#设置启动加载代理包
root@e2f19103cbc2:/opt/atlassian/jira# echo 'export CATALINA_OPTS="-javaagent:/opt/atlassian/jira/atlassian-agent.jar ${CATALINA_OPTS}"' >> /opt/atlassian/jira/bin/setenv.sh
root@e2f19103cbc2:/opt/atlassian/jira#
exit
#重启容器
[root@kube-master ~]# docker restart jira
jira
[root@kube-master ~]# docker exec -it jira bash
#进入目录
root@e2f19103cbc2:/var/atlassian/application-data/jira# cd /opt/atlassian/jira/
#开始注册
root@e2f19103cbc2:/opt/atlassian/jira# java -jar atlassian-agent.jar -d -m 123456789@qq.com -n Jira -p jira -o http://192.168.10.128:8080 -s B288-2IS6-IV6G-L3HT
然后将上面返回结果拷贝至浏览器界面,下一步即可。注意-m后面的邮箱应该可以任意填写(暂没研究用途),-s后面的是从浏览器界面上获取的server ID。
等待激活,然后填写相关用户信息。注意这里面的相关信息都是后面需要使用的。比如登录的用户,密码等。
选择later
继续即可。后续按自己需求使用即可。到此安装结束。
邮箱在jira中算是一个很重要的配置了。下面来看看配置方法。右上角设置->系统->外发邮件(左边)->配置一个新的 SMTP电邮服务器。然后大致配置如下,注意密码不是qq的登录密码,需要去qq邮箱单独生成。
测试通过后,点击更新。然后发送测试邮件,直到能正常发送邮件,如下:
接收邮件
到此,jira的安装和重要配置分享完毕,后续有需要再进行补充。编写过程中,难免出现差错,敬请指出
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。