😌DevOps(Git+Jenkins)

实验环境为局域网内

主机

主机名/ip

jenkins

192.168.2.40

gitlab

192.168.2.50

Git

一、gitlab部署

可以从清华源下载相应版本

`rpm包下载地址
# https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/	
`我这里选择的是12.0版本的,这是下载地址
#https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-12.0.0-ce.0.el7.x86_64.rpm

1、下载gitlab安装包.rpm

`安装依赖
[root@gitlab ~]# yum install -y curl policycoreutils openssh-server openssh-clients postfix policycoreutils-python
`安装命令   要保证centos主机有网,并且有配置yum源
[root@gitlab ~]# ls /usr/bin/wget || yum -y install wget && wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-12.0.0-ce.0.el7.x86_64.rpm --no-check-certificate

2、安装gitlab

image-20220708234033720
image-20220708234727848

gitlab启动成功

image-20220708234929951

设置新的管理员密码

image-20220708235058678

3、登录

image-20220708235211682
在这里插入图片描述

注意:在 GitLab 中配置的中文并不是全部都是中文,你们可以安装中文插件,我这边使用的是谷歌浏览器转换。

4、配置邮箱报警

登录控制台发送测试邮件

image-20220709000417884
image-20220709000430532
image-20220709000606366

5、创建群组

image-20220709000643354

创建一个群组 ,设置为内部群组

image-20220709000915087

6、创建一个账号

image-20220709001030436

设置账户名和邮箱,使用权设置为root,密码需要用户收到邮件后自己设置

image-20220709001135955

点进去设置密码 image-20220709001319596

设置新密码 image-20220709001405473

将两个用户都添加到刚刚创建的test_grup群组中 image-20220709001828092

7、创建一个新项目

创建一个新项目,使用的是刚刚创建的zhangyan用户 image-20220709001944691

需要选择的只有下面这两项 image-20220709002131776

创建成功了之后,创建一个新文件 image-20220709002252134

写上文件名,写一些内容,点击完成 image-20220709002425302

8、配置免密克隆

image-20220709002953896

验证(克隆过程中不需要输入密码即可)

9、gitlab部署完成

二、jenkins部署

教程

1、安装JDK

2、安装jenkins

jenkins启动报错解决方案

jenkins启动时卡在启动界面解决方案 把/var/lib/jenkins/hudson.model.UpdateCenter.xml文件里的默认地址改为 http://mirror.xmission.com/jenkins/updates/update-center.json

3、进入jenkins

image-20220709013520196
image-20220709013649482

4、创建用户

这里忘记截图了,从网上找了一张,这一步的截图

在这里插入图片描述

进入jenkins

image-20220709155000841

5、安装相关插件

6、配置jenkins免密拉取gitlab

image-20220709160429747

7、将私钥上传到jenkins

image-20220709160651547
image-20220709160912934

8、在jenkins上创建项目

image-20220709161040575
image-20220709161617828
image-20220709161642251

测试构建无问题

image-20220709162101784

9、测试发布到web

**大概意思就是在gitlab上修改内容,通过jenkins重新构建到web的工作目录 **

image-20220709163405285
image-20220709163509962

测试构建成功

image-20220709163551593

拷贝也成功了

image-20220709163623476

10、配置jenkins自动部署

构建触发器

image-20220709163950103
image-20220709164422726
image-20220709164901367
image-20220709171412895

推送测试 image-20220709171438775

image-20220709171451098

11、推送失败解决方案

测试推送失败的话,可以到jenkins端配置下面这些 image-20220709171207801

点进去往下拉找到 Enable authentication for '/project' end-point image-20220709171306036

如果再不行的话 就把匿名用户可读权限勾选上 image-20220709171601152

12、网页测试

现在是这样的网页 image-20220709171851099

我在gitlab上进行修改 image-20220709171924747

这时候jenkins会出现一个正在构建的队列 image-20220709171959604

再次刷新网页 网页已经变化了 image-20220709172031418

这有帮助吗?