花了两天,搞了Gitlab-Runner CI/CD实现自动化部署,可比Jenkins香太多啦!!!!

     废话:


 别人开场都是前言,我这统称为废话。

      确实很久没有写博客和公众号了,因为这几个月以来实在太忙太多事。换了新的工作,新的朋友圈,一切从头来过,我不仅要适应还要努力工作,不然我怕我的“狗盆”不保😰。

 

    我以为新公司就不要每天负责那么些东西,可以安安静静安安心心的撸代码,草率了,比以前搞得东西更多了......我........🤨,那就继续奥里给吧。

 

    新公司使用gitlab项目管理,之前用的并不多,偶尔使用GitHub上传一些demo项目,没想到这玩意越用越香啊,太好用了,墙裂推荐。


废话完毕~天也不早,干点正事。

gitlab实现自动化部署的方式就是通过安装gitlab-runner,通过每个项目给的url和token,就会自动拉取代码,然后执行一系列你写好的shell就OK。

 

 

Gitlab-Runner安装:


1.docker安装:

docker pull gitlab/gitlab-runner:latest
docker run -d --name gitlab-runner --restart always -v /var/run/docker.sock:/var/run/docker.sock -v /srv/gitlab-runner/config:/etc/gitlab-runner gitlab/gitlab-runner:latest
//初始化注册
docker exec -it gitlab-runner gitlab-runner register

  此时注意了,就会提示让你输入Url——token——desc(项目描述)——tags(就是你这个runner的名称),url和token是每一个项目gitlab-runner给你默认分配的。

把这里的url和token拷贝出来,输入到控制台提示的就可以了,注意注意:tags必须是唯一的,一个项目下的url和token可以公用,但是输入tags的时候一定要注意不要重复。不然之后自动化部署会出现问题。

注册成功过的tags在上图的位置也可以看到。


手动安装:

 yum -y install gitlab-runner_amd64.rpm

 这里注意一点:yum 安装的git版本好像只能是1.8的,再更新还是1.8,然而这个版本太低了,会导致后面自动化部署的时候出现这个问题。

 这个错误就是git版本的问题,解决办法如下:

#安装源
yum install http://opensource.wandisco.com/centos/7/git/x86_64/wandisco-git-release-7-2.noarch.rpm
#安装git
yum install git
#更新git
yum update git

确定版本在2.x

还有jdk和maven安装的方式,这里不描述,那都是常用的东西。需要提一点的是权限问题。因为会用到maven打包,所有要保证给足权限。

cd 到maven的bin路径下执行命令:

chmod +755 ./*

 

看到这些文件亮了,说明就可以了。


.gitlab-ci.yml文件的重要性:

安装完毕!

这个配置文件里面有很多命令,大家可以参考百度,用到的其实并不多,我也没有更深的研究,够用了。

  • stages:关键字,可选,用于自定义任务流程。若缺失,默认流程为:build > test > deploy;
  • job 1:任务名称,可自由定义,可包含空格;
  • stage:关键字,用于指定任务在什么stage运行;
  • script:关键字,按顺序撰写该任务的shell脚本;
  • artifacts:关键字,用于指定该任务执行完毕后,哪些目录或文件需要保留。所有内容会打包成一个zip压缩包,供下载或后续任务使用;
  • only:关键字,用于指定依赖的代码分支;
  • image:关键字,可选,可制定一个docker镜像,用于执行该任务。若缺失,使用Runner配置配置;
  • when:关键字, 可选,用于指定任务触发的条件。若缺失,一旦有代码提交到该分支就会自动运行。
  • 可设置为手动触发; [官方文档](https://docs.gitlab.com/ee/ci/yaml/README.html)
  • 注意:.gitlab-ci.yml是一个YAML格式文件,因此,缩进应该使用空格,而不要使用tab。

 

注意注意:所有自动化部署的东西,第一个镜像包要么通过DockerFile手动打包,要么就是利用插件在idea里打包。

再注意:.gitlab-ci.yml文件在项目中放的位置,尽可能的采用springboot单体项目模式,像springcloud管理的项目,他会把你所有的子module都打包,如果你放在子module下面,是不会触发自动部署的。

那么问题来了,如果现在就是springcloud管理的项目下有多个module,怎么办呢?

建立不同分支,每个分支放单独的项目(前提是公共的模块,已被打包放置仓库,不然maven打包其他项目的时候肯定会找不到其他依赖的包)。

 

 


最后结果:

随便变更一个文件上传到gitlab,找到你项目在gitlab的位置,CI/CD-作业

所有的执行记录。

 点开是可以看到实时的日志的。

结果如此,即为成功~ 

  • 6
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 在 GitLab 中,一个 runner 可以是启用状态(active)或者停用状态(not active)。如果你看到 `gitlab-runner-ci is not active`,这意味着这个 runner 当前被停用了。 有几种可能的原因导致 runner 处于停用状态: 1. 你可能在 GitLab 的项目设置中手动停用了这个 runner。 2. 如果 runner 上的 token 发生了更改,则 runner 将被自动停用。 3. 如果 runner 所在的机器或者网络出现故障,它也会被停用。 如果你想让 runner 重新启用,你可以在 GitLab 的项目设置中启用它。如果这个 runner 是由于 token 更改或者网络故障导致停用的,你可能需要重新配置并启动 runner。 ### 回答2: GitLab Runner是一个持续集成(CI)工具,它用于运行自动化构建和测试任务。当状态显示为"not active"时,并且持续以黑色显示,通常有以下几种可能的原因: 1. GitLab Runner未正确安装:可能是由于安装过程中出现了错误或问题,导致Runner无法正常启动。你可以尝试重新安装GitLab Runner,确保按照官方文档中的指引正确配置和安装。 2. 没有配置Runner:在GitLab中,你需要为每个项目配置Runner才能运行CI任务。如果没有为项目配置Runner或配置有误,Runner将无法正常启动。你可以检查项目设置中的CI/CD设置,确保Runner正确关联到项目。 3. Runner未连接到GitLab服务器:Runner需要连接到GitLab服务器才能接收和执行CI任务。如果Runner无法连接到服务器,它将无法正常工作。你可以检查网络连接,确保GitLab服务器可访问。 4. Runner的配置文件有误:可能是Runner的配置文件中存在错误,例如错误的URL、证书或认证信息。你可以检查Runner的配置文件(通常存储在/etc/gitlab-runner/config.toml),确保配置正确。 5. Runner身份验证失败:如果GitLab Runner的身份验证失败,它将不能与GitLab服务器通信。你可以检查GitLab Runner的授权令牌,确保其有效和正确配置。 总之,出现"not active"且黑色显示的情况,通常是由于GitLab Runner安装、配置或网络问题导致的。检查这些方面,并进行相应的修复和调试,你应该能够使GitLab Runner正常工作。 ### 回答3: 当gitlab-runner-ci显示为黑色时,意味着该runner当前处于不活动状态。出现此问题的原因可能有以下几点: 1. GitLab Runner未安装或未配置:如果没有正确安装或配置GitLab Runner,则它将无法正常工作。可以通过检查确保正确安装和配置了GitLab Runner。 2. GitLab Runner未注册:在GitLab中使用GitLab Runner必须先进行注册。通过运行`gitlab-runner register`命令并提供必要的信息,如GitLab URL和runner token,来注册GitLab Runner。 3. GitLab Runner未启动:如果GitLab Runner未启动,则无法正常工作。可以通过运行`gitlab-runner start`命令来启动GitLab Runner。 4. GitLab Runner没有正确与GitLab通信:GitLab Runner需要与GitLab进行通信才能正常工作。可能是由于网络问题或GitLab配置问题导致无法与GitLab通信。可以检查网络连接并确保GitLab配置正确。 5. 硬件或操作系统问题:如果系统硬件或操作系统存在问题,可能会导致GitLab Runner无法正常工作。可以检查操作系统和硬件要求是否满足,并确保系统稳定。 综上所述,当GitLab Runner-ci显示为黑色时,可能存在安装、配置、注册、启动、网络通信或系统问题导致。通过检查这些方面,可以解决问题并确保GitLab Runner-ci正常工作。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值