实现jira与gitlab的关联

一、docker安装gitlab

docker run --detach \
  --restart always \
  --publish 8433:443 --publish 880:80 --publish 822:22 \
  --name gitlab \
  --volume /home/gitlab/config:/etc/gitlab \
  --volume /home/gitlab/logs:/var/log/gitlab \
  --volume /home/gitlab/data:/var/opt/gitlab \
  gitlab/gitlab-ce:latest
-p 880:80  将容器内80端口映射至宿主机880端口,这是访问gitlab的端口
-p 822:22  将容器内22端口映射至宿主机822端口,这是访问ssh的端口
web访问gitlab: http://192.168.11.45:880
 
注册,使用注册的用户登录报错: Your account is pending approval from your GitLab administrator and hence blocked. Please contact your GitLab administrator if you think this is an error .
password可能不符合密码规范要求,请自行更换成你自己的密码 。u.save返回True表明密码设置成功
重启gitlab容器
再次用 root/your_password登录。
 
问题:按照上述部署,gitlab创建项目的时候,生成的URl访问地址是按容器的hostname来生成的,也就是容器的id。
# 重点:接下来的配置请在容器内进行修改,不要在挂载到宿主机的文件上进行修改。否则可能出现配置更新不到容器内,或者是不能即时更新到容器内,导致gitlab启动成功,但是无法访问
>>> 需要在 gitlab.rb中配置http协议访问的地址, 把external_url改成部署机器的域名或者IP地址
##注意不要重启
   
>>> 修改 gitlab.yml (这一步原本不是必须的,因为 /etc/gitlab/gitlab.rb 内配置会 会映射到 /var/opt/gitlab/gitlab-rails/etc/gitlab.yml 这个文件,为了防止没有成功覆盖所以我在这里进行配置,当然你也可以选择不修改gitlab.rb直接修改这里)
让修改后的配置生效: gitlab-ctl reconfigure
重启gitlab: gitlab - ctl restart
退出容器: exit
   
web访问gitlab(eaxternal_url配置的就是这个) http://192.168.11.45:880,但此时你会 发现gitlab访问不了
根据 修改Docker部署gitlab的外部访问地址和端口_修改gitlab的访问url和端口_b哈利路亚d的博客-CSDN博客所言,因为默认会用这个端口号(external_url ' http://192.168.11.45:880')作为gitlab的nginx的监听端口。但因为我们这里其实是监听的80端口,所以要额外配置:
让修改后的配置生效: gitlab-ctl reconfigure
   
此时访问gitlab: http://192.168.11.45:880成功,查看仓库的下载地址如下:
经测试、HTTP与SSH方式均可成功拉取代码到本地。

二、docker安装jira、MySQL

2.1、安装Jira

制作JIra破解镜像:
Dockerfile:
FROM cptactionhank/atlassian-jira-software:7.13.1
USER root

# 将代理破解包加入容器
COPY "atlassian-agent.jar" /opt/atlassian/jira/

# 设置启动加载代理包
RUN echo 'export CATALINA_OPTS="-javaagent:/opt/atlassian/jira/atlassian-agent.jar ${CATALINA_OPTS}"' >> /opt/atlassian/jira/bin/setenv.sh
网上查找atlassian-agent.jar文件,将atlassian-agent.jar文件放置在Dockerfile同目录下。
  
构建镜像:
docker build -t jira/jira:7.13.1 .
运行Jira容器:   / home / jira / data与 / home / jira / logs目录不用提前创建,运行容器会自动在本地生成
docker run --detach \
  --restart always \
  -p 8091:8080 \
  -v /home/jira/data:/var/atlassian/jira \
  -v /home/jira/logs:/opt/atlassian/jira/logs \
  --name jira \
  jira/jira:7.13.1

2.2、安装MySQL与创建数据库

docker run --name mysql -d -p 3336:3306 -e MYSQL_ROOT_PASSWORD=Root_123 mysql:5.7 
注意可修改密码
在Jira数据库设置中会用到, 必须提前创建数据库jira
# 进入mysql容器
docker exec -it mysql /bin/bash
# 在容器中进入mysql,密码修改了的请修改命令
mysql -uroot -pRoot_123
# 创建jira数据库
CREATE DATABASE jira CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
# 退出mysql
exit
# 退出容器
exit

2.3、web访问Jira并设置

然后我们选择第二项,进入下一步:
数据库设置,选择数据库类型,输入mysql服务的host,然后输入上面的数据库的名称和密码,然后进行下一步,然后就会到下面的页面。
点击“下一步”,弹出设置许可证密钥:
许可证生成步骤:
步骤1:进入容器内
docker exec -it  jira  /bin/bash
步骤2:到atlassian-agent.jar所在目录
cd /opt/atlassian/jira   
java -jar atlassian-agent.jar -d -m test@test.com -n ZQ -p jira -o http://92.168.11.45:7801 -s B5HX-6060-0LA3-HQ6T
  • # 通过破解包生成激活码
  • # -p 产品名称 jira
  • # -m 邮箱( test @ test.com
  • # -n 用户名,这个随意
  • # -o 部署的入口地址
  • # -s 服务器ID(BY9B-GWD1-1C78-K2DE)
拷贝生成的许可证,点击“下一步”:
设置管理员账户:
设置电子邮件通知:
初始页面:

三、Jira与Gitlab关联

3.1、在gitlab里设置jira集成

Web URL:输入Jira地址即可
Jira API URL:和Jira地址相同时,不需要输入
Username orEmail: Jira账号
Enter new Password orAPItoken:Jira账号的密码
测试配置ok:

3.2、Jira创建一个问题

3.3、象征性提供一个代码,附上Jira的ID

3.4、在gitlab里,可以看到本次提交commit信息里,关联的jira需求id,且可以跳转的

3.5、 在jira需求问题时,也可以看到gitlab的提交记录

  • 7
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值