跳至主要內容

搭建Jira

知识库运维技巧开发搭建Jira大约 1 分钟

CentOS7 安装

########################
## 官网:  https://www.atlassian.com/software/jira/update
## 源码: git clone --recurse-submodules https://github.com/aws-quickstart/quickstart-atlassian-jira.git
########################

# 下载文件
wget https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-8.21.0-x64.bin
# 添加执行权限
chmod 755 atlassian-jira-software-8.21.0-x64.bin
# 开始安装Jira
./atlassian-jira-software-8.21.0-x64.bin
# 默认的安装目录
ll /opt/atlassian/jira && ll /var/atlassian/application-data/jira
# 主要的配置文件
ll /opt/atlassian/jira/conf/server.xml
# 修改jira内存参数
ll /opt/atlassian/jira/bin/setenv.sh
# 日志查看
tail -f /opt/atlassian/jira/logs/catalina.out
# 启动jira
cd /opt/atlassian/jira/bin && ./start-jira.sh

# 防火墙开放端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent && firewall-cmd --reload

###### 链接MySQL
## 官方文档:https://docs.atlassian.com/jira/jadm-docs-0821/Connecting+Jira+applications+to+a+Database#ConnectingJiraapplicationstoadatabase-UpgradingJiraormigratingJiratoanotherserver?
# MySQL创建jira_db数据库
mysql -e "CREATE DATABASE jiradb CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;"
# 创建jira用户,并赋予权限
mysql -e "GRANT ALL ON jira_db.* TO 'jira'@'%' IDENTIFIED BY '123456@aA'"
# 刷新权限
mysql -e "FLUSH PRIVILEGES"
# wget https://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.49/mysql-connector-java-5.1.49.jar
cp -avf mysql-connector-java-5.1.49.jar /opt/atlassian/jira/lib/
## 界面初始化选择‘我将设置它自己’

###### 破解
# 先将jira停止
/etc/init.d/jira stop
# 拷贝破解jar到指定位置
cp -avf atlassian-agent-1.3.1.jar /opt/atlassian/jira/atlassian-jira/WEB-INF/lib/
cp -avf atlassian-extras-3.1.2.jar /opt/atlassian/jira/atlassian-jira/WEB-INF/lib/
# 重启jira
/etc/init.d/jira start
lsof -i:8080

docker 安装

cat >> docker-compose.yml <<EOF
version: "3"
services:
  jira:
    #*******************
    # docker exec -it jira java -jar /opt/atlassian/jira/atlassian-agent.jar -p jira -m nobody@163.com -n nobody -o devops.inet -s 页面上的服务器ID
    #*******************
    image: atlassian/jira-software:8.20
    container_name: jira
    restart: always
    ports:
      - "8083:8080"
    environment:
      TZ: "Asia/Shanghai"
      JAVA_OPTS: "-javaagent:/opt/atlassian/jira/atlassian-agent.jar"
      JVM_MINIMUM_MEMORY: "4096m"
      JVM_MAXIMUM_MEMORY: "4096m"
    volumes:
      - ./data/data:/var/atlassian/application-data/jira
      - ./data/patch/mysql-connector-java-5.1.42.jar:/opt/atlassian/jira/atlassian-jira/WEB-INF/lib/mysql-connector-java-5.1.42.jar
      - ./data/patch/atlassian-agent-1.3.1.jar:/opt/atlassian/jira/atlassian-agent.jar
    ulimits:
      nproc: 65535
      nofile:
        soft: 65535
        hard: 65535
    networks:
      - devops.inet
  mysql:
    image: mysql:5.7.36
    container_name: mysql
    restart: always
    environment:
      TZ: "Asia/Shanghai"
      MYSQL_ROOT_PASSWORD: B2drock@bj
      MYSQL_ROOT_HOST: "%"
      MYSQL_DATABASE: "jira_db820"
      MYSQL_USER: "jira_user"
      MYSQL_PASSWORD: "B2drock@bj"
    volumes:
      - /opt/jira/mysql/data:/var/lib/mysql
      - /opt/jira/mysql/conf/docker.cnf:/etc/mysql/conf.d/docker.cnf
    ulimits:
      nproc: 65535
      nofile:
        soft: 65535
        hard: 65535
    networks:
      - devops.inet
networks:
  devops.inet:
EOF
# 启动
docker-compose up -d
# 停止
docker-compose down