05搭建Git+Gitlab+Jenkins自动部署平台

2021-03-21  本文已影响0人  鸡蛋挂面

环境准备

image.png

一、搭建git版本控制系统

01.安装

[root@gitlab ~]# git config 
用法:git config [选项]
配置文件位置
    --global              使用全局配置文件
    --system              使用系统级配置文件
    --local               使用版本库级配置文件
    -f, --file <文件>      使用指定的配置文件

03.配置使用git的用户

git config --global user.name "lang"

04.配置使用git的邮箱

git config --global user.email "yun@qq.com"

05.设置语法高亮

git config --global color.ui true

06.查看配置

[root@gitlab ~]# git config --list
user.name=ly
user.email=ly@qq.com
color.ui=true
[root@gitlab ~]# 

二、搭建gitlab代码仓库

01.官方网站

https://about.gitlab.com/install/#centos-7

02.安装依赖

yum -y install policycoreutils-python.x86_64 openssh-server curl

03.安装gitlab

在清华源下载指定版本的rpm包

https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/
yum -y localinstall gitlab-ce-10.2.2-ce.0.el7.x86_64.rpm

04.修改配置文件

vim /etc/gitlab/gitlab.rb
...
external_url 'http://192.168.66.88'
...

05.重新加载配置并启动

gitlab-ctl reconfigure

06.gitlab常用命令

#查看当前状态
gitlab-ctl status

#启动服务
gitlab-ctl start

#启动服务
gitlab-ctl stop

#停止单个服务
gitlab-ctl stop nginx

#查看服务日志
gitlab-ctl tail

07.浏览器访问

image.png

08.创建用户、用户组、项目

09.添加SSH密钥

用户想从代码仓库中拉取和上传代码之前需要先在gitlab服务费添加上用户的SSH密钥信息

09-1.客户端需要生成SSH密钥对

ssh-keygen -f /root/.ssh/id_rsa -N ''

09-2.复制公钥

# cat /root/.ssh/id_rsa.pub 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC5gIh1IK5yXn827c0WLhBMVV3bExPrLSpAXurKwxOw8WMezISGUDuiWj6qgzhc9Cm0VJ1vC3iG5r/8H/QDXEO4cykVNfIDtmUiT0+2RrOESR7gkFiBwjBGoeydMH4r861IQQmOTKYrbQ4mnB288bMM4VPz9GKdcxJLxbg7sKRXEGc2aWYJNBHVu3lRhDThQBQI4V6ZPRseV4Srxr6f55Is7eiU+jYKl+m2mzxrcybMv0HbqCMZCotqrA9kVldy4V+w4GrrRSd9IPX8IsOOj+BEfWcHuTMEpbPiRhSvBnb8hCjsO8gFF/d4brqTxlTt9P9G2qoBkCbEHIb81I8kQ17b root@master1

09-3.将公钥信息添加到gitlab服务器里

image.png

09-4.用户克隆项目

image.png

克隆代码测试

git clone git@192.168.66.99:dev/game.git

三、搭建Jenkins自动部署

01.官方网站

https://www.jenkins.io/zh/
https://www.jenkins.io/zh/doc/

02.安装部署

清华源直接下载rpm包安装即可,下载地址如下:

https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat/

安装命令如下:

yum -y install java-1.8.0-openjdk-devel
rpm -ivh jenkins-2.259-1.1.noarch.rpm

03.目录文件说明

[root@jenkins ~]# rpm -ql jenkins 
/etc/init.d/jenkins                     #启动文件
/etc/logrotate.d/jenkins                #日志切割脚本
/etc/sysconfig/jenkins                  #配置文件
/usr/lib/jenkins                        #安装目录
/usr/lib/jenkins/jenkins.war            #安装包
/usr/sbin/rcjenkins                         
/var/cache/jenkins                          
/var/lib/jenkins                        #数据目录
/var/log/jenkins                        #日志目录

04.配置使用root账户运行

vim /etc/sysconfig/jenkins
JENKINS_USER="root"

05.启动jenkins

systemctl start jenkins 

06.在jenkins中关联gitlab的项目

06-1.配置jenkins访问gitlab的权限

部署公钥解释和步骤

解释:

1.如果我们想让jenkins从gitlab上拉取代码,那么需要将jenkins的公钥信息放在gitlab上。
2.gitlab针对这种情况有一个专门的功能,叫做部署部署公钥。
3.部署公钥的作用是不需要创建虚拟用户和组,直接在需要拉取的项目里关联部署公钥即可。

步骤:

1.获取jenkins公钥信息
2.将jenkins公钥信息填写到gitlab的部署公钥里
3.由项目管理员操作,在需要jenkins拉取的项目里关联部署公钥
4.jenkins配置私钥凭证,部署项目时关联凭证

06-2获取jenkins服务器的SSH公钥信息

[root@jenkins ~]# cat /root/.ssh/id_rsa.pub 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCVtB5Er5d4kFQu/o2+GvoWE4gi00LJmWkNCc5qb10R3osMG60+RJZ3iGQLz70RGHSXkOpSNptc5a0HHch4QWJARly0DJU+pPPOd+ks3UfbmKt/YmDy5fHA5tFgPRSF3G4pidgNmxitEfy1OvvBAoFu2fIAum1BGvYFz+qvhARBe7CtVJZPAmyrVI92RDorjdJWvVzvFRaCMfG1kWBNC77SBOR9xZ3jiEna9394h6MKX5OnnR9sA3WF01nKO0jj4SAaU0Iun/n3u9EsAn4QQeFmcOGEpTvTHB08P8bNiw5Yt97DL41pGwAW0IyrGKG0AbOlS/nngNRnH3WmSm6CDMEd root@jenkins

06-3gitlab添加部署公钥

image.png

06-4.gitlab项目关联部署公钥

image.png

06-5.jenkins配置私钥凭证

image.png
image.png

06-6.测试获取代码

image.png
上一篇 下一篇

猜你喜欢

热点阅读