Jenkins+gitlab 自动化构建部署maven项目

1 安装gitlab

环境准备:2g以上内存的服务器(我个人是用电脑开的虚拟机,centos 7 64 位)

如果该台服务器上已经安装过gitlab,如果需要重新装,请卸载之前的gitlab。

完全卸载gitlab的方法如下:

首先查看gitlab的进程,如果有gitlab的进程,说明该服务器上之前安装过gitlab,这时我们想要重新安装gitlab,首先需要将gitlab进行完全的卸载。

ps aux | grep gitlab

以下是gitlab的卸载流程:

停止gitlab

 gitlab-ctl stop

卸载gitlab

rpm -e gitlab-ce

查看gitlab进程

ps aux | grep gitlab


可能会出现很多进程,如上图所示,我们需要将第一个进程给kill掉

kill -9 进程号

杀掉第一个进程(就是带有好多…的进程)。杀掉后,在ps aux | grep gitlab确认一遍,还有没有gitlab的进程。若还存在,可以把它的主要组件的进程也杀一边。(日志的进程不用管)

删除所有包含gitlab文件

find / -name gitlab | xargs rm -rf

当然若你没有全杀权限。那么可以可以把这三个目录给干掉也可以:

rm -rf /opt/gitlab

rm -rf /etc/gitlab

rm -rf /var/log/gitlab

以上就是完全卸载gitlab的教程。接下来开始安装gitlab。

安装镜像文件准备:gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm(附下载链接:gitlab资源下载链接)

将下载好的资源文件上传到服务器上,并且开始安装gitlab

进入gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm所在的文件夹执行以下命令

rpm -i gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm


出现以上截图,证明安装成功!

安装成功后需要对gitlab进行相关配置的修改!

2 配置gitlab

修改gitlab的ip与端口号,使用如下命令:

vi  /etc/gitlab/gitlab.rb


然后退出编辑模式,保存退出!

修改完后需要重新加载配置文件

gitlab-ctl reconfigure

重新加载配置文件需要的时间可能较长,耐心等待!

加载完毕后,需要重新启动gitlab

gitlab-ctl restart

3 访问gitlab

通过刚配置的ip+端口号进行访问

注意:这里可能无法访问,这时候我们需要将我们设定的端口号开放并且重启防火墙

firewall-cmd --add-port=9000/tcp --zone=public--permanent

firewall-cmd –reload

这时候就可以正常访问gitlab了!

第一次访问gitlab需要更改密码,跟着提示完成密码的更改,然后登录gitlab。


随后我们新建一个项目工程。

新建完毕后我们需要去配置ssh key 进行连接gitlab。

打开本地git bash,使用如下命令生成ssh公钥和私钥对


ssh-keygen -t rsa -C '[email protected]

然后一路回车(-C 参数是你的邮箱地址)


然后去自己本地文件夹下(C:\Users\Administrator\.ssh)我的生成的密钥在这里。

如下图所示,讲公钥里面的内容复制到剪切板中

打开gitlab,选择SSH Keys 将刚复制出来的key粘贴进keys里面,定义一个名称,点击Add Key

即完成ssh key的设置


以上gitlab基本配置完成!



安装jenkins

安装jenkins的前提准备

我们需要安装JDK、tomcat、maven

由于jdk、tomcat、maven的安装挺简单的,这里不再展示安装教程。

假设我们jdk、tomcat、maven都已经安装完成了。接下来我们需要配置环境变量

使用这个命令进行编辑环境变量

vi  /etc/profile.d/jenkins_tools.sh

将下列内容粘贴到jebkins_tools.sh中(根据自己的jdk和maven安装路径进行相应的修改)

#jdk

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.282.b08-1.el7_9.x86_64

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib

export PATH=${JAVA_HOME}/bin:$PATH

export TIME_STYLE='+%Y/%m/%d %H:%M:%S'

#maven

export MAVEN_HOME=/usr/local/maven/apache-maven-3.3.9

export PATH=${MAVEN_HOME}/bin:$PATH

然后使用命令检测maven、jdk是否安装成功!

java -version

mvn -version

如果能看到jdk、maven的版本号信息,则代表已经安装成功!

准备工作已经完毕,接下来开始安装jenkins了!

导入镜像:sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo--2019-12-24 17:59:44--  https://pkg.jenkins.io/redhat-stable/jenkins.repo


导入公钥:sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key


安装jenkins:  yum install jenkins


出现以上截图,代表jenkins已经安装完成!

修改配置文件: vi /etc/sysconfig/jenkins

修改 jenkins 的端口号,端口号自己定义,只要不冲突就行!


修改完毕后,开启启动jenkins。

启动jenkins:systemctl  start  jenkins

这时候通过 ip+端口号访问jenkins

注意:这里有可能访问不了,可能是端口号没有开放,端口开放参考上面的gitlab的端口开放!

一开始会有一些插件的安装,我就选择推荐的插件,然后等待安装完成即可!



jenkins配置



完成上述配置后,保存即可!

全局属性配置

构建一个maven工程

完毕后开始进行工程配置

将上面的id_rsa文件里面的内容复制到key里面,这三个文件我是通过git bash ,将gitlab上的项目clone下来后,通过生成命令生成密钥,其中id_rsa是密钥,rd_rsa.pub是公钥,公钥用于在gitlab上的配置。

 WAR/EAR files:输入war包的相对路径,如我的war包在新建目录的target下

context path:输入部署tomcat的名称,就部署在webapps下的目录名

add container:增加容器,一般选tomcat8X就可以。这里的username与password需要到tomcat的conf文件夹中的tomcat-users.xml修改。tomcat

URL就是你希望把war包部署到的tomcat所在IP地址。

tomcat-users.xml中的用户名及密码默认是注释掉的,所以需要修改,也可以直接复制以下代码到之前。

 

 

 

 

 

 

 

 

 然后到tomcat下面webapps/manager/META-INF/context.xml 注销掉红色部分。因为默认tomcat不可以通过外部ip访问管理界面。一定要启动Tomcat,不然等构建等时候会报拒绝连接

  

 



关于gitlab的配置

出现状态为200即为表示成功,如果为404.403状态码,请检查一下url是否正确。

按照以上构建,出现构建成功则可以完成maven项目的部署!

你可能感兴趣的:(Jenkins+gitlab 自动化构建部署maven项目)