架构——20——Jenkins+Gitlab实现持续集成——3

CI&CD:

持续集成注重将各个开发者的工作集合到一个代码仓库中,通常每天会进行几次, 主要目的是尽早发现集成错误,使团队更加紧密结合,更好地协作。
持续交付的目的是最小化部署或发布过程中团队固有的摩擦, 它的实现通常能够将构建部署的每个步骤自动化,以便任何时刻能够安全地完成代码发布(理想情况下)。
持续部署是一种更高程度的自动化,无论何时代码有较大改动, 都会自动进行构建/部署。

Jenkins:

Jenkins是开源CI&CD软件领导者, 提供超过1000个插件来支持构建、部署、自动化, 满足任何项目的需要。

官方文档:
https://www.jenkins.io/zh/doc/

所需环境:

gitlab192.168.1.128
jenkins192.168.1.129

一、安装配置gitlab

1、安装前提软件

[root@gitlab ~]# yum install curl policycoreutils openssh-server openssh-clients postfix -y

2、下载清华gitlab安装包

[root@gitlab ~]# wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.2.2-ce.0.el7.x86_64.rpm		#下载rpm包到虚拟机

3、yum安装

[root@gitlab ~]# ls
gitlab-ce-10.2.2-ce.0.el7.x86_64.rpm
[root@gitlab ~]# yum -y install gitlab-ce-10.2.2-ce.0.el7.x86_64.rpm

4、修改配置文件,指定ip地址

[root@gitlab ~]# vim /etc/gitlab/gitlab.rb
external_url 'http://192.168.1.128'		#修改

5、配置启动 gitlab

[root@gitlab ~]# gitlab-ctl reconfigure

查看状态

[root@gitlab ~]# gitlab-ctl status

6、gitlab服务管理命令(开启/关闭/重启)

[root@gitlab ~]# gitlab-ctl start/stop/restart

7、创建用户、组、项目

1)创建用户

登录gitlab——admin area——new user——添加用户名、邮箱——create user——edit——修改密码
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2)创建group

登录gitlab——admin area——new group
在这里插入图片描述
在这里插入图片描述

把zhangsan用户添加到组中:
在这里插入图片描述

3)创建项目

登录gitlab——admin area——new project——注意选择组(dianfeng)
在这里插入图片描述
在这里插入图片描述

4)创建一个代码文件用做后边的铺垫

创建一个代码文件用做后边的试验
在这里插入图片描述
在这里插入图片描述

二、安装配置jenkins

1、下载安装jenkins

[root@jenkins ~]# wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat/jenkins-2.222-1.1.noarch.rpm		#下载jenkins包到虚拟机
java-1.8.0-openjdk.x86_64	# 安装java jdk
[root@jenkins ~]# yum -y install jenkins-2.222-1.1.noarch.rpm		#安装jenkins

2、修改配置文件(默认jenkins端口为8080,如果同gitlab一起安装,需要修改端口)

[root@jenkins ~]# vim /etc/sysconfig/jenkins
JENKINS_USER="root"
JENKINS_PORT="8081"

3、启动jenkins

[root@jenkins ~]# systemctl start jenkins
[root@jenkins ~]# systemctl enable jenkins

4、web界面登录jenkins

http://192.168.1.129:8081
在这里插入图片描述

5、输入密码

[root@jenkins ~]# cat /var/lib/jenkins/secrets/initialAdminPassword
52fcff735a43495db0920ffddb3be435

复制加密密码字段,粘贴到web
在这里插入图片描述

6、选择安装插件

先选择右上角“X”,进入
在这里插入图片描述
在这里插入图片描述

7、修改admin用户密码

右上角——admin点击小三角——Configure——Password字段——修改密码——save保存
在这里插入图片描述
在这里插入图片描述

8、复制插件包到虚拟机

1)解压复制jenkins插件包到/var/lib/jenkins/plugins下
[root@jenkins ~]# ls /var/lib/jenkins/plugins/

[root@jenkins ~]# ls
jenkins-plugins.tar.gz
[root@jenkins ~]# tar zxf jenkins-plugins.tar.gz 
[root@jenkins ~]# ls
plugins
[root@jenkins ~]# cp -rp /root/plugins/ /var/lib/jenkins/
[root@jenkins ~]# ls /var/lib/jenkins/plugins/
ace-editor                              mapdb-api.jpi
ace-editor.jpi                          matrix-auth
…………		//省略
2)重启服务
[root@jenkins ~]# systemctl restart jenkins

9、关联gitlab

1)点击左上角logo——回到主页面——选择新项目“New Item”——填写项目名(freestyle-job)——选择项目类型“Freestyle project”——OK

在这里插入图片描述
在这里插入图片描述

2)配置项目freestyle-job右边小三角——configure——Source Code Management——git——Repository URL:(git@192.168.1.128:dianfeng/dev.git)——报红字错误,则需要添加私钥认证——如果认证成功——save保存

如果不小心退到主界面了进入配置项目步骤:(没有就略过)
在这里插入图片描述

报红字错误,则需要添加私钥认证——如果认证成功——save保存
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

!!解决红色报错问题!!

思路:
(1)首先排除jenkins安装了git;
[root@jenkins ~]# git
git git-receive-pack git-shell git-upload-archive git-upload-pack
(2)双方相互copy公钥
[root@gitlab ~]# ssh-keygen -t rsa
[root@gitlab ~]# ssh-copy-id root@192.168.1.129
|
[root@jenkins ~]# ssh-keygen -t rsa
[root@jenkins ~]# ssh-copy-id root@192.168.1.128
(3)在gitlab的网页端添加私钥认证
[root@gitlab ~]#
[root@gitlab ~]# cat /root/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDTOG9ARiDpM7lP30kFFokOiSe3w5+13ir06ungGNo2Rmx/+tA06dVSX1eGtYzVEStyZGLNAp+DqAHZ2mOFK/gmJXyacD73PFjgmKKzIj4LynhhJShQIpqb2coOTdYONMjOak3Dzrvrz3GgQSoV2zG+ZYjSrLdKXni3k19vOWnYKeXETga/ssfWUY/Yp45bUhbvc4zEenHmv4YkVbN0AMxMIckAM7WIPPYOXzv9sPBN7bRC0+hBnmY2Kxxorqew27tU7GiQb422SuMyHH21encXfs1ei0zdHlpMshHTPu8Nt0fX8RIFQV2aM3a0Dh25Q+1R+McZR0yYe2m79AxRjmEp root@gitlab
在这里插入图片描述
[root@jenkins ~]# cat /root/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDBUDp1sP2Zrzh/4iUQ25FMQzGPW1m5M0hHH90icclJRPKGFahRWpyebEmXQwG8ngPmLMY7tKf+/twO3T0Wu6TzKNluyG8G1sD34loT70QVKir4C3C7rCBxMkBcVL1R/JRLTb+ffAi7h7nlFDfNbQ2zWWEh2EvuOFZP98IJrfBJbas4lgj9jH7cS1QsTTIVXyb9pmxPHu96PuJwpc3f+Rrhscfn28RGvDibl+ugmUioaOkbXvZxuJ5phikZzlA04eScuhBOjuSQbhlfrwsJzpu+6BLy6vYMh+/s+yyhxrC1u9D2QzZ2RJ2jwCmlqxNo5aLu0C//9S6jS5eLXjyyOgp1 root@jenkins
在这里插入图片描述

认证成功——save保存
在这里插入图片描述

3)选择项目——左侧选择“build now”——下面构建历史出现蓝色标志——选择蓝色标志下拉列表——console output——输出执行过程

选择项目——左侧选择“build now”——下面构建历史出现蓝色标志——选择蓝色标志下拉列表——console output
在这里插入图片描述
输出执行过程
在这里插入图片描述

4)jenkins服务器上查看/var/lib/jenkins/workspace目录,会有项目同名文件夹,保存git clone 的所有代码
[root@jenkins ~]# cd /var/lib/jenkins/workspace/
[root@jenkins workspace]# ls
freestyle-job  freestyle-job@tmp
[root@jenkins workspace]# cd freestyle-job
[root@jenkins freestyle-job]# ll -a
总用量 4
drwxr-xr-x 3 root root  33 7月  22 04:48 .
drwxr-xr-x 4 root root  52 7月  22 04:48 ..
drwxr-xr-x 8 root root 162 7月  22 04:48 .git
-rw-r--r-- 1 root root   9 7月  22 04:48 test.md
[root@jenkins freestyle-job]# cat test.md 
123456789
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值