Centos7下搭建Jenkins+GitLab+Maven 实现代码自动打包编译发布

通过本文,大家将学到以下知识点:

1、学习Jenkins相关知识

2、JDK安装部署

3、tomcat安装部署

4、Jenkins安装部署

5、Jenkins相关概念及使用

6、IDEA下创建WEB项目演示

7、Gitlab安装部署

8、Git客户端安装部署

9、Maven安装与配置

10、Jenkins构建各类项目及构建技巧

一、Jenkins介绍

Jenkins是一个独立开源的持续集成和持续交付工具,用于自动化构建、测试和部署软件项目。它提供了一个易于使用的Web界面,可以帮助开发团队快速构建、测试和部署他们的代码。

Jenkins 可以通过本机系统包、Docker 安装,甚至可以由任何安装了 Java 运行时环境 (JRE) 的机器独立运行。

(一)Jenkins功能

Jenkins是一个开源的持续集成工具,它可以在自动化构建,测试和部署软件的过程中发挥重要的作用。Jenkins允许软件开发人员自动构建,测试和发布他们的代码,而无需进行手动的操作。主要功能包括:

1、持续集成:可以在代码修改后自动进行构建、测试和部署。

2、自动化部署:可以将软件部署到指定的服务器上。

3、测试报告:可以生成测试报告,并将测试结果自动反馈给相关开发人员。

4、软件包管理:可以管理版本控制系统和软件包依赖性。

5、插件支持:可以通过插件扩展Jenkins的功能。

(二)Jenkins官网地址

Jenkins官网地址如下:

https://www.jenkins.io/

图片

进入官网后,可以点击https://www.jenkins.io/zh/doc/book/进入中文用户文档页面查看相关帮助信息。

(三)Jenkins安装条件

Jenkins可以运行在各种不同的操作系统上,包括Windows、Linux、MacOS等。只要环境配置正确,Jenkins就可以在各种操作系统上运行。系统对软件和硬件的要求并不高,具体要求如下:

系统要求(最低推荐配置):

256MB可用内存/1GB可用磁盘空间(作为一个Docker容器运行jenkins的话推荐10GB)

如果是小团队使用,则推荐的硬件配置:1GB+可用内存/50GB+ 可用磁盘空间

软件配置:

软件方面需要Java运行环境支持,Java运行时环境(JRE)或Java开发工具包(JDK)都可以。

(四)Jenkins的发行版本

Jenkins项目产生两个发行线, 长期支持版本 (LTS) 和每周更新版本。

稳定版 (LTS)

LTS (长期支持) 版本每12周从常规版本流中选择,作为该时间段的稳定版本。每隔 4 周,我们会发布稳定版本,其中包括错误和安全修复反向移植。

定期发布 (每周)

每周都会发布一个新版本,为用户和插件开发人员提供错误修复和功能。

(五)Jenkins演示项目部署环境拓扑

本文所有演示环境基于Centos7.6系统部署,以下为拓扑结构:

图片

本实验将针对如上拓扑,进行如下实验,跑通Jenkins整个持续集成项目。

大概有如下步骤:

1、首先,开发人员角色进行代码提交,提交到Git远程仓库。

2、然后,Jenkins作为持续集成工具,使用Git工具到Git仓库拉取代码到集成服务器,再配合JDK,Maven等软件完成代码编译,打包等工作,在这个过程中每一步出错,都重新再执行一次整个流程。

3、最后,Jenkins把生成的jar或war包分发到测试服务器或者生产服务器,测试人员或用户就可以访问应用。

二、GitLab安装部署

以下操作在192.168.20.231服务器上完成。

(一)GitLab介绍

GitLab是一个开源的git仓库管理软件,并提供web界面,方便管理git仓库。和github很相似,不过github暂时没有开源版本,项目必须托管到github官方网站,不能本地部署。很多公司考虑到安全费用等因素,搭建自己的gitlab服务器。

1、GitLab官方地址为

https://about.gitlab.com/

(二)GitLab安装

1、安装相关依赖软件

yum install -y openssh-server openssh-clients postfix cronie policycoreutils-python

2、启动sshd服务并且设置为开机自启动

systemctl enable sshd && sudo systemctl start sshd

3、启动邮件服务并且设置为开机自启动

systemctl enable postfix && systemctl start postfix

4、做好相关服务的防火墙策略,我这里直接将防火墙关闭

firewall-cmd --add-service=ssh --permanentfirewall-cmd --add-service=http --permanentfirewall-cmd --reload

5、下载gitlab的rpm包

1)可以从gtilab官方网站下载相应gitlab版本的rpm包,地址如下

https://packages.gitlab.com/gitlab/gitlab-ce

2)也可以从国内镜像站下载相应gitlab版本的rpm包,地址如下

https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/

图片

选择对应版本,复制下载链接即可

图片

复制15.11.13版本下载链接如下:

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

通过wget命令进行下载

wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-15.11.13-ce.0.el7.x86_64.rpm --no-check-certificate

6、通过rpm命令进行安装即可

rpm -ivh gitlab-ce-15.11.13-ce.0.el7.x86_64.rpm

7、修改配置文件/etc/gitlab/gitlab.rb访问地址及访问端口,这里我改为85端口

external_url 'http://192.168.20.231:85'
nginx['listen_port'] = 85

8、重新加载配置文件

gitlab-ctl reconfigure

9、重启GitLab服务

gitlab-ctl restart

10、登录GitLab

通过浏览器访问http://192.168.20.231:85

这里管理员用户默认为root,密码可以在文件/etc/gitlab/initial_root_password中查看,如下:

[root@master ruanjianfile]# cat /etc/gitlab/initial_root_password# WARNING: This value is valid only in the following conditions#          1. If provided manually (either via `GITLAB_ROOT_PASSWORD` environment variable or via `gitlab_rails['initial_root_password']` setting in `gitlab.rb`, it was provided before database was seeded for the first time (usually, the first reconfigure run).#          2. Password hasn't been changed manually, either via UI or via command line.##          If the password shown here doesn't work, you must reset the admin password following https://docs.gitlab.com/ee/security/reset_user_password.html#reset-your-root-password.
Password: vlrcciD02sCJheisy8cEZvoZ7CaehHIEfdUxzDEQRCM=
# NOTE: This file will be automatically deleted in the first reconfigure run after 24 hours.

图片

11、在管理页面修改默认语言为简体中文。

图片

12、在管理页面--用户菜单,修改管理员root的密码,我这里设置为haodao123

图片

(三)GitLab添加组

使用管理员账号root创建组,一个组里面可以有多个项目分支,可以将开发添加到组里面进行权限设置,不同的组就是公司不同的开发项目或者服务模块,不同的组添加不同的开发即可实现对开发权限的管理。

1、root账号登录进入后台

2、编写组相关信息创建即可

图片

3、选择对应组,创建项目,如下:

图片

(四)新建用户

1、切换到管理菜单,选择用户选项;

图片

2、填写用户相关信息,创建即可。

图片

3、在新增用户界面,选择编辑,为新创建用户添加密码;

图片

我这里密码是hh123456

(五)将新建用户添加到组里

1、找到对应组,成员信息

2、添加成员到组里

图片

3、切换到huanghao账号登录,已经可以看到huanghao这个账号在组里面了

图片

(六)将源码上传到GitLab仓库

IDEA中创建项目,大家可以先看后面章节再回过来操作。

1、IDEA编辑器中创建了一个简单web项目

图片

2、IDEA编辑器中找到VCS菜单,选择如下子菜单

图片

3、选择Git类型

图片

前提是本地安装好Git环境

4、在对应项目中右键,找到Git,点击Add将代码放到缓存中去

图片

5、同上一步,在对应项目中右键,找到Git,点击Commit Directory将代码提交本地仓库;

图片

图片

6、同上一步,在对应项目中右键,找到Git,点击Manage Remotes管理添加远程仓库;

图片

图片

从gitlab组中对应项目找到HTTP对应地址,编辑添加如下所示:

图片

7、同上一步,在对应项目中右键,找到Git,点击Push

图片

图片

8、此时push成功,gitlab项目中可以看到如下信息

图片

四、Git客户端安装

以下操作在192.168.20.232服务器上完成。

以下通过源码方式进行安装,注意通过yum方式安装默认安装的是低版本!

(一)卸载yum安装的低版本git

1、查看git版本

git --version

2、卸载git

yum remove -y git

(二)源码安装git

1、安装相关依赖软件

yum -y install libcurl-devel expat-devel curl-devel  gettext-devel openssl-devel zlib-devel

2、安装编译工

yum -y install  gcc perl-ExtUtils-MakeMaker

3、下载Git对应版本源码,网址如下:

https://mirrors.edge.kernel.org/pub/software/scm/git/

4、找到对应版本下载链接,通过wget工具下载

wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.39.3.tar.gz --no-check-certificate

5、对应目录下,解压源码包

tar -xzf git-2.39.3.tar.gz

6、准备编译安装

cd git-2.39.3make prefix=/usr/local/git allmake prefix=/usr/local/git install

7、添加git到环境变量,编辑/etc/profile文件,最后加入如下内容;

export PATH=/usr/local/git/bin:$PATH

如下图所示:

图片

8、使环境变量生效

source /etc/profile

9、验证git安装是否成功

[root@node1 ~]# git --versiongit version 2.39.3[root@node1 ~]# whereis gitgit: /usr/bin/git /usr/local/git /usr/local/git/bin/git /usr/share/man/man1/git.1.gz

五、JDK安装部署

本套实验中,总共有两台服务器需要安装部署JDK环境,为了让大家更好学习Linux环境下软件安装部署,我这里将给大家分别展示通过yum方式及官网下载二进制包安装的方式。其中跑Jenkins服务的那一台服务器将通过yum方式安装JDK11版本,跑tomcat的那一台服务器将手动安装JDK8版本。

(一)yum方式安装部署JDK11

以下操作在192.168.20.232服务器上执行安装部署命令。前提是大家配置好yum环境。

yum -y install java-11-openjdk*

安装完毕执行如下命令验证是否成功安装配置好环境变量。

java -version

执行上面命令后,看到如下信息,说明安装JDK成功了。

图片

通过yum方式安装好JDK11后默认安装目录如下

/usr/lib/jvm

(二)JDK8安装部署

当然,大家如果嫌弃下载麻烦,也可以通过yum方式安装即可,以下演示只是为让大家掌握另外一种安装方法。

以下操作在192.168.20.233服务器上进行。

1、JDK安装包获取

(1)进入甲骨文官网下载。

https://www.oracle.com/

图片

(2)下载自己需要安装的JDK版本,如下图所示:

图片

(3)找到JAVA 8对应的Linux版本下载即可,如下图所示:

图片

(4)点击进行下载,需要登录甲骨文账号下载,自己注册一个登录

2、下载好JDK安装包后,上传安装服务器

我这里如下所示:

图片

3、我这里打算将JDK安装在/usr/local目录下,将JDK安装包解压缩到安装目录下即可,大家根据自己实际环境执行解压命令。

tar -xzvf /ruanjianfile/jdk-8u381-linux-x64.tar.gz -C /usr/local/

4、设置环境变量,通过修改/etc/profile文件进行设置。

vi /etc/profile

通过编辑器打开编辑,文件最后加上如下内容保存。

export JAVA_HOME=/usr/local/jdk1.8.0_381export PATH=$PATH:$JAVA_HOME/bin

5、使环境变量生效,执行以下命令:

source /etc/profile

6、验证JDK是否安装成功。

java -version
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT-民工21110

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值