《Docker快速入门(提高篇)》通过Docker Compose安装Jira

前面两篇文章,介绍了Compose的基本用法,并给出了Nginx、MySQL、GitLab的具体示例,但是,都仅限单个容器的管理。本篇,要说说多个容器如何管理,以Jira为例。

一、环境准备

1、下载atlassian-agent

源出处为https://zhile.io/2018/12/20/atlassian-license-crack.html,Gitee和GitHub项目资源已不可见,好在文章末尾的百度网盘长期有效。下载,得到atlassian-agent-v1.3.1.zip,解压,里面有说明文件和需要的jar包。

提示:实在要该资源,可以在Gitee搜索atlassian-agent。

2、下载MySQL驱动

jira安装后,在初始化时,需要配置已有数据库链接,还需要用到驱动包,这里也要提前下载好。

下载方法有很多,比如你项目上应该就有。这里提供一种方式:新建一个Spring Boot项目,添加MySQL依赖,获取最新驱动。

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>org.lewis.demo</groupId>
  <artifactId>demo-mysql-connection</artifactId>
  <version>1.0-SNAPSHOT</version>

  <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.7.3</version>
    <relativePath/> <!-- lookup parent from repository -->
  </parent>

  <properties>
    <java.version>17</java.version>
  </properties>

  <dependencies>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter</artifactId>
    </dependency>
    
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <scope>runtime</scope>
    </dependency>
  </dependencies>
  
  <build>
    <plugins>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
    </plugins>
  </build>
  
</project>

3、目录设置

在一个空文件夹下,新建文件夹mysql、jira、libs,新建文件docker-compose.yml。

其中,mysql和jira,用于存放配置文件、日志文件、数据文件;将下载的两个jar包,存放在libs中,容器中要使用。

4、编写yml

编写yml文件,管理mysql和jira两个容器:

services:
  mysql:
    container_name: mysql
    image: mysql:latest
    restart: "no"
    ports: 
      - 13306:3306
    environment:
      MYSQL_ROOT_PASSWORD: 123456
    volumes:
      - ./mysql/conf:/etc/mysql
      - ./mysql/logs:/var/log/mysql
      - ./mysql/data:/var/lib/mysql

  jira:
    container_name: jira
    image: atlassian/jira-software:latest
    restart: "no"
    ports:
      - 18080:8080
    environment:
      CATALINA_OPTS: -javaagent:/opt/atlassian/jira/atlassian-agent.jar
    volumes:
      - ./jira/data:/var/atlassian/application-data/jira
      - ./libs/atlassian-agent.jar:/opt/atlassian/jira/atlassian-agent.jar
      - ./libs/mysql-connector-java-8.0.30.jar:/opt/atlassian/jira/lib/mysql-connector-java.jar

这里定义了两个服务,mysql和jira,上面下载的两个jar包也通过数据卷挂载到jira容器中了。

5、启动容器

执行命令:docker-compose up -d,启动容器:

mysql镜像,之前演示过,这里只需要拉取jira镜像,并创建了两个容器,查看下容器启动情况。

mysql启动失败,回顾下基础篇中《在Docker中运行MySQL》,在mysql的conf下创建文件夹conf.d即可。

再次执行docker-compose up -d,启动容器,可见该命令的强大。

再次查看容器,应该就没问题了。

6、创建数据库

首先,通过MySQL客户端测试数据库连接,主机填写localhost。

接下来,创建该连接,打开该连接,新建查询,执行以下脚本,创建jira数据库和用户。

create database jiradb;
create user "jira"@"%" identified by "jira";
grant all privileges on jiradb.* to "jira"@"%";
flush privileges;

以上,创建了jiradb数据库,创建了jira用户,其密码为jira,并为该用户做了授权。

二、设置Jira

经过上述折腾,jira容器应该已经启动完毕了,打开http://localhost:18080

1、设置中文

首先,将Language设置为中文。

2、我将设置它自己

接下来,选择我将设置它自己。

3、数据库设置

选择其它数据库,主机不能填localhost,应该写容器名mysql,端口填3306,不能填13306,因为是在容器中连接,数据库填jiradb,用户名和密码都是jira,测试连接。

注意:主机和端口不能填错了,因为这是在容器内使用,应该填写容器名和容器内使用的端口,否则测试连接失败。

4、设置应用程序的属性

属性采用默认设置就好了。

5、设置许可证

如果本地有java环境,可以在本地生成许可证,没有的话,进入jira容器生成也可以。

执行命令,带上服务器ID,生成许可证。

java -jar atlassian-agent.jar -d -m test@test.com -n BAT -p jira -o lewis2951 -s BSL7-RRF4-HKAS-ZHVK

 

以上通过本地环境生成的,复制许可证。

6、设置管理员账户

根据自己需求设置,Email地址可以写一个不存在的,但建议使用真实Email,最好找组织申请一个,下面会用到,例如jira@company.com。

7、设置电子邮件通知

如果现在设置,将带出上一步设置的管理员Email,这里就不设置了。

8、完成部署

到此,Jira就部署完成了,看看页面。

进入欢迎页面,可以创建示例项目,也可以选择其他,根据实际需要来选择。

9、查看许可证

最后看下许可证,在 管理 -> 应用程序 下。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Docker-compose是一个用于定义和运行多个容器应用的工具,能够简化容器化应用的部署与管理过程。而Jira和Confluence是Atlassian公司开发的两个知名的协同办公工具。 Jira是一个专业的项目管理工具,可以帮助团队进行需求管理、任务分配、缺陷跟踪等工作。使用Docker-compose可以方便地部署Jira容器,并配置所需的环境参数,例如数据库连接、内存分配等。通过定义相关的容器服务,可以实现快速搭建和管理Jira应用,减少了环境配置和部署的工作量。 Confluence是一个企业知识管理平台,可以用于团队和组织的文档协作、知识共享、项目文档等。与Jira类似,使用Docker-compose可以轻松地配置和部署Confluence容器,并设置相关的容器服务。通过这种方式,可以快速创建和管理Confluence应用,提高了协同办公的效率。 使用Docker-compose来部署Jira和Confluence有以下几个优点: 1. 声明式配置:通过Docker-compose的YAML文件,可以清晰地定义Jira和Confluence的各种配置项,使部署过程更加可控和可重复。 2. 快速部署和扩展:Docker-compose可以同时启动多个容器实例,可以根据实际需求轻松扩容和缩容。这样可以在需要时快速部署新的Jira和Confluence实例,提高应用的可用性和性能。 3. 环境隔离:Docker容器提供了强大的隔离性,每个应用实例都运行在独立的容器内。这样可以避免应用之间的相互影响,增强了应用的稳定性和安全性。 总之,通过使用Docker-compose来部署Jira和Confluence,可以简化应用的部署和管理,提高开发和协同办公的效率,并且具备良好的可扩展性和隔离性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值