Docker 创建 Jira Core(Jira SoftWare) 7.12.3 中文版

Docker 创建 Jira Core(Jira SoftWare) 7.12.3 中文版

目录

[TOC]

1、介绍

1.1、什么是 JIRA Core?

  JIRA Core属于精简版,以下是官网的功能介绍:

  • 业务项目模板
      可以使用开箱即用的业务项目模板来管理简单的任务和复杂的工作流。自定义模板以匹配您的团队的工作方式。现在,所有步骤都已探讨,您的团队可以真正地采取行动了。

  • 任务详情
      可以看看任意项目发生了什么情况。每个任务的详情以及评论、附件和截止日期都存储在一个位置。

  • 通知
      使用提及 (@) 功能获取特定团队成员的关注并随时了解详细的便捷通知。当您收到指派的任务或需要您提供反馈时,您可以立刻获悉。

  • 强力搜索
      可以使用搜索工具来查找具体答案:截止日期,任务上次更新时间或者团队成员还需要完成的任务。将项目信息放在一个位置,无需更多地四处挖掘,信息全部都在这个位置。

  • 报告和仪表盘
      报告和仪表盘可显示一切内容,以帮助您了解团队的一切动态。配置它们,使其显示最重要指标。

1.2、什么是 JIRA SoftWare

  Jira Software 专为软件团队中的每位成员构建,可用于规划、跟踪和发布卓越的软件。

  • 规划
      创建用户案例和事务、规划 Sprint 并跨软件团队分配任务。

  • 跟踪
      全面了解情况,排定整个环境中团队工作的优先次序并进行讨论。

  • 发布
      确定自己所拥有的信息始终是最新的,从而在交付时充满自信并且保持理智。

  • 报告
      根据您的团队可以利用的直观实时数据提升团队绩效。

不建议大家在公司使用破解版。本文主要以练习使用 Docker 进阶为目的。:)

2、JIRA 的官网在哪里?

  https://www.atlassian.com/
    

3、如何下载安装?

  我将 JIRA Core 7.12.3 以及 JIRA SoftWare 7.12.3 直接封装到了 Docker 镜像中,如何安装Docker,请参考这篇文章<Centos7的安装、Docker1.12.3的安装,以及Docker Swarm集群的简单实例>

本文后面的实例中,只讲JIRA Core的安装以及破解使用过程
JIRA SoftWare破解的步骤与JIRA Core相同。JIRA SoftWare的 Docker 文件在这里:https://github.com/idoall/docker/tree/master/ubuntu16.04-jira-software

    
  以下实例中安装 JIRA Core 7.12.3 ,需要用到 MySQL 5.7,如果你已经安装完Docker,可以下载已经做好的 <docker-compose.yml>。文件内容如下,请注意修改/srv/your_folder/my.ini的位置为你下载后的文件位置:

version: '3'
# https://docs.docker.com/compose/compose-file/
# support Docker version 17.05.0-ce
services:

#################################### zentao ######################################################

##############################
# jira_mysql
##############################
  jira_mysql:
    image: "idoall/mysql:5.7"
    hostname: jira_mysql
    ports:
     - "20032:3306"
    volumes:
      - /srv/your_folder/my.ini:/etc/mysql/my.cnf
    networks:
      - jira
    environment:
      - MYSQL_ROOT_PASSWORD=123456
      - MYSQL_DATABASE=jira
      - MYSQL_USER=jira
      - MYSQL_PASSWORD=jira_mshk
      - character-set-server=utf8
      - collation-server=utf8_bin
    deploy:
      replicas: 1
      update_config:
        delay: 1s
      restart_policy:
        condition: on-failure
##############################
# jira-core
# 使用最多不超过50%的CPU和2G内存,总是有25%的CPU以及1G内存可用
##############################
  jira_core:
    image: "idoall/ubuntu16.04-jira-core:7.12.3"
    hostname: jira_core
    ports:
     - "20030:8080"
     - "20031:8005"
    networks:
      - jira
    depends_on:
     - jira_mysql
    deploy:
      replicas: 1
      update_config:
        delay: 1s
      restart_policy:
        condition: on-failure
      resources:
        limits:
          cpus: '0.50'
          memory: 2048M
        reservations:
          cpus: '0.25'
          memory: 1024M

# 统一网络设置
networks:
  jira:
    driver: overlay

     
  我们运行以下命令,使用 Docker Stack 的编排服务,来创建 JIRA Core 7.12.3 以及 MySQL 5.7 服务:

$ docker stack deploy -c docker-compose.yml mshk_jira_core
Creating network mshk_jira_core_jira
Creating service mshk_jira_core_jira_mysql
Creating service mshk_jira_core_jira_core

  
  启动成功后,使用下面的命令,可以看到 JIRA Core 7.12.3MySQL 5.7 的服务运行状态:

$ docker service ls
ID                  NAME                        MODE                REPLICAS            IMAGE                                 PORTS
10bd0j58k313        mshk_jira_core_jira_core    replicated          1/1                 idoall/ubuntu16.04-jira-core:7.12.3   *:20030->8080/tcp, *:20031->8005/tcp
jnaf9d90bnwm        mshk_jira_core_jira_mysql   replicated          1/1                 idoall/mysql:5.7                      *:20032->3306/tcp

  
  再等几分钟以后,在<docker-compose.yml>文件中,可以看到,我们对 JIRA 做了20030->8080端口的映射,所以打开:http://localhost:20030 ,能够看到如下页面,说明运行成功:

这时的等待是因为 JIRA Core的服务需要启动, MySQL 5.7 的数据库需要创建。

  JIRA-1

  

4、对 JIRA 进行配置

  

4.1、JIRA 安装程序

  选择我将设置它自己 ,下一步。
  JIRA-2

  

4.2、数据库设置

  选择其他数据库,数据库类型选择MySQL,输入 我们在<docker-compose.yml>中,配置的主机名 jira_mysql ,端口 3306,数据库名称 jira ,用户名 jira ,密码 jira_mshk
  可以点击 测试连接,能够在上方看到 数据库连接测试成功,最后点击下一步,会花费一些时间,稍等一会即将配置成功。
  JIRA-3

4.3、设置应用程序的属性

  在这里可以设置 JIRA 的程序标题、网站是否允许用户注册,以及后面要访问的URL,设置好后,点击下一步
  JIRA-4

  

4.4、许可授权码

  点击生成Jira试用许可证。会跳转到 Atlassian 的官网。
  JIRA-5

    
  注册一个帐号后,会看到如下界面,输入Organization,确认 Server ID 和上张图片一致,然后点击 Generate License
  JIRA-6

    
  会看到一个弹窗,确认你是否要在指定的服务器上安装许可,点击Yes,然后会自动返回到我们的 JIRA 容器的服务中,并且带上已经可以试用的许可,然后点击 下一步,如下图:
  JIRA-7

  

4.5、设置管理员帐户

   输入图中的红框部分,全名:陌上花开Email地址:jira@mshk.top用户名:mshk密码:mshk确认密码:mshk以后,点击下一步。
   JIRA-8

    

4.6、设置电子邮件通知

  如果不配置电子邮件,可以选择以后再说,然后点完成。
JIRA-9

如果需要配置腾讯企业邮箱,请参考本文后面的 FAQ

在下一个界面中,选择中文(中国)[默认],然后点击 Continue.
JIRA-10

  

4.6、完成设置

  根据下图中,点击下一步,选择创建示例项目,在弹出的窗口中点击下一步,然后输入项目名称关键字,最后点击提交。
JIRA-11

提交后,可以看到熟悉的项目管理界面,恭喜你,和我同步完成了 JIRA 的安装。
JIRA-12
  

4.7、对 JIRA 进行破解

  在本文 4.6章节 创建项目成功以后,点击右上角的齿轮,选择应用程序,能够看到和下图类似的情况,还有29天到期。
  JIRA-13
  
  JIRA 7.12.3 的破解文件已经打包到了 Docker 中。
  先用 docker ps 命令,查看服务生成的容器名称,本文测试时生成的容器名称是 mshk_jira_core_jira_core.1.89d9kf5bxj8t5k3j8xw23ymmx

docker ps
CONTAINER ID        IMAGE                                 COMMAND                  CREATED             STATUS              PORTS                                    NAMES
ce1112c2939c        idoall/ubuntu16.04-jira-core:7.12.3   "/bin/bash -e /init/…"   2 minutes ago       Up About a minute   8005/tcp, 8080/tcp, 8090/tcp, 8443/tcp   mshk_jira_core_jira_core.1.89d9kf5bxj8t5k3j8xw23ymmx
7e6876454ff1        idoall/mysql:5.7                      "docker-entrypoint.s…"   2 minutes ago       Up 2 minutes        3306/tcp                                 mshk_jira_core_jira_mysql.1.wg84v54trlt576f40nwjmrm53

  
  Docker 编排服务后的容器名称比较长,把容器名称赋值到一个变量CONTAINERNAME ,这样后面使用起来会很方便。
  最后运行以下2个命令完成破解。

$ CONTAINERNAME=`docker ps --format "{{.Names}}" | grep mshk_jira_software_jira_software.1`
$ docker exec $CONTAINERNAME sh -c 'service jira stop;mv /opt/atlassian/jira/atlassian-jira/WEB-INF/lib/atlassian-extras-3.2.jar /opt/atlassian/jira/atlassian-jira/WEB-INF/lib/atlassian-extras-3.2.jar.bak;mv /usr/src/_jira/atlassian-extras-3.2.jar /opt/atlassian/jira/atlassian-jira/WEB-INF/lib/atlassian-extras-3.2.jar;mv /opt/atlassian/jira/atlassian-jira/WEB-INF/atlassian-bundled-plugins/atlassian-universal-plugin-manager-plugin-2.22.9.jar /opt/atlassian/jira/atlassian-jira/WEB-INF/atlassian-bundled-plugins/atlassian-universal-plugin-manager-plugin-2.22.9.jar.bak;cp /usr/src/_jira/atlassian-universal-plugin-manager-plugin-2.22.9.jar /opt/atlassian/jira/atlassian-jira/WEB-INF/atlassian-bundled-plugins/atlassian-universal-plugin-manager-plugin-2.22.9.jar;service jira start'

  运行破解命令以后,能够看到下面的命令行提示,说明破解成功。

executing using dedicated user
                .....
          .... .NMMMD.  ...
        .8MMM.  $MMN,..~MMMO.
        .?MMM.         .MMM?.

     OMMMMZ.           .,NMMMN~
     .IMMMMMM. .NMMMN. .MMMMMN,
       ,MMMMMM$..3MD..ZMMMMMM.
        =NMMMMMM,. .,MMMMMMD.
         .MMMMMMMM8MMMMMMM,
           .ONMMMMMMMMMMZ.
             ,NMMMMMMM8.
            .:,.$MMMMMMM
          .IMMMM..NMMMMMD.
         .8MMMMM:  :NMMMMN.
         .MMMMMM.   .MMMMM~.
         .MMMMMN    .MMMMM?.

      Atlassian JIRA
      Version : 7.12.3


If you encounter issues starting or stopping JIRA, please see the Troubleshooting guide at http://confluence.atlassian.com/display/JIRA/Installation+Troubleshooting+Guide


Server startup logs are located in /opt/atlassian/jira/logs/catalina.out
Tomcat did not stop in time.
To aid diagnostics a thread dump has been written to standard out.
Killing Tomcat with the PID: 60
The Tomcat process has been killed.

To run JIRA in the foreground, start the server with start-jira.sh -fg
executing using dedicated user: jira
                .....
          .... .NMMMD.  ...
        .8MMM.  $MMN,..~MMMO.
        .?MMM.         .MMM?.

     OMMMMZ.           .,NMMMN~
     .IMMMMMM. .NMMMN. .MMMMMN,
       ,MMMMMM$..3MD..ZMMMMMM.
        =NMMMMMM,. .,MMMMMMD.
         .MMMMMMMM8MMMMMMM,
           .ONMMMMMMMMMMZ.
             ,NMMMMMMM8.
            .:,.$MMMMMMM
          .IMMMM..NMMMMMD.
         .8MMMMM:  :NMMMMN.
         .MMMMMM.   .MMMMM~.
         .MMMMMN    .MMMMM?.

      Atlassian JIRA
      Version : 7.12.3


If you encounter issues starting or stopping JIRA, please see the Troubleshooting guide at http://confluence.atlassian.com/display/JIRA/Installation+Troubleshooting+Guide


Server startup logs are located in /opt/atlassian/jira/logs/catalina.out
Tomcat started.

  
  等几分钟,然后打开浏览器:http://localhost:20030 ,点击右上角的齿轮,选择应用程序,能够看到和下图类似的情况,截止日期到了2033年2月8日说明破解成功。
  JIRA-14
  

5、FAQ

5.1、 JIRA 配置QQ企业邮件服务器

勾选TLS设置587端口,可以发送成功。
  

5.2、Jira Core/SoftWare如何做持久化

  在docker重启后内容会丢失,可以设置本地一个目录,挂载到容器中的/var/atlassian/application-data目录,然后执行以下命令,设置容器的目录权限、复制破解文件、并重启服务。

$ docker exec $CONTAINERNAME sh -c 'service jira stop;chown -R jira:jira /var/atlassian/application-data;cp /opt/atlassian/jira/atlassian-jira/WEB-INF/lib/atlassian-extras-3.2.jar /opt/atlassian/jira/atlassian-jira/WEB-INF/lib/atlassian-extras-3.2.jar.bak;cp /usr/src/_jira/atlassian-extras-3.2.jar /opt/atlassian/jira/atlassian-jira/WEB-INF/lib/atlassian-extras-3.2.jar;mv /opt/atlassian/jira/atlassian-jira/WEB-INF/atlassian-bundled-plugins/atlassian-universal-plugin-manager-plugin-2.22.9.jar /opt/atlassian/jira/atlassian-jira/WEB-INF/atlassian-bundled-plugins/atlassian-universal-plugin-manager-plugin-2.22.9.jar.bak;cp /usr/src/_jira/atlassian-universal-plugin-manager-plugin-2.22.9.jar /opt/atlassian/jira/atlassian-jira/WEB-INF/atlassian-bundled-plugins/atlassian-universal-plugin-manager-plugin-2.22.9.jar;service jira start'

博文作者:迦壹
博客地址:Docker 创建 Jira Core(Jira SoftWare) 7.12.3 中文版
转载声明:可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明,谢谢合作!


12 thoughts on “Docker 创建 Jira Core(Jira SoftWare) 7.12.3 中文版

    1. 兄弟没有7.12.3的镜像,用的latest,还有个7.2.7的,安装起了,也破解了,但是没得中文啊
      怎么搞成中文的

    1. 也占不了多大空间,当时时间有限,就拿现成的docker测试,源码在github上有,如果你有时间可以帮忙做一个alpine版的镜像

  1. 兄弟你这个怎么安装插件啊,打算安装个测试用例的:Zephyr for Jira – Test Management,但是一直没找到在哪里去安装啊

    1. 插件管理工具,也破解了,不要升级,安装以后,重启下JIRA就可以免费使用付费软件了

  2. 楼主,怎么样做jira的持久化啊,试了很多次都没有文件到宿主主机的

    1. 参可以参考曾经做的一个使用docker-compose部署的例子
      “`
      version: ‘3’
      # https://docs.docker.com/compose/compose-file/
      # support Docker version 17.05.0-ce
      services:

      #################################### jira ######################################################

      ##############################
      # jira_software_mysql
      ##############################
      jira_software_mysql:
      image: idoall/mysql:5.7
      hostname: jira_software_mysql
      ports:
      – “20032:3306”
      volumes:
      – /your path/_jira_software/_db:/var/lib/mysql
      networks:
      – mshk-top
      environment:
      – MYSQL_ROOT_PASSWORD=123456
      – MYSQL_DATABASE=jira
      – MYSQL_USER=jira
      – MYSQL_PASSWORD=jira_mshk
      – character-set-server=utf8
      – collation-server=utf8_bin
      deploy:
      replicas: 1
      update_config:
      delay: 1s
      restart_policy:
      condition: on-failure
      ##############################
      # jira_software
      # 使用最多不超过50%的CPU和2G内存,总是有25%的CPU以及1G内存可用
      ##############################
      jira_software:
      image: idoall/ubuntu16.04-jira-software:7.12.3
      hostname: jira_software
      ports:
      – “20030:8080”
      – “20031:8005”
      dns:
      – 192.168.1.1
      – 114.114.114.114
      – 9.9.9.9
      volumes:
      – /your path/_jira_software/application-data:/var/atlassian/application-data
      networks:
      – mshk-top
      depends_on:
      – jira_software_mysql
      deploy:
      replicas: 1
      update_config:
      delay: 1s
      restart_policy:
      condition: on-failure

      # 统一网络设置
      networks:
      mshk-top:
      external: true
      ““`

  3. 请问一下,mysql的服务可以正常运行启动容器,但是jira的服务一直在启动容器然后退出容器,就是运行不起来,是什么原因?

    1. 您好,可以输出docker logs 容器ID 看下输出的日志是什么,根据日志去定位问题。

回复 迦壹 取消回复

您的电子邮箱地址不会被公开。 必填项已用*标注