ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。

这篇具有很好参考价值的文章主要介绍了ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、服务器环境

名称                              系统                                   IP                              备注

gitlab               ubuntu20.04.2图形化          192.168.26.130        要求有6G的内存

Jenkins           Ubuntu20.04.2图形化          192.168.26.110        没有硬性要求   

测试服务器     Ubuntu20.04.2图形化          192.168.26.129        没有硬性要求

2、做时间同步(所有服务器都要执行)

timedatectl set-timezone "Asia/Shanghai"       #时区改为上海

ntpdate "ntp.aliyun.com"                                  #更正时间

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

出现下图错误 说明本机没有安装ntpdate 

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

解决办法

sudo apt install ntpdate

3、安装gitlab极狐

sudo apt-get update                          #更新系统的软件包列表和版本信息

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

sudo apt-get install -y curl openssh-server ca-certificates tzdata perl             #下载依赖

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

sudo systemctl status ssh                       #查看ssh是否在运行

sudo systemctl start ssh                          #启动ssh

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

curl -fsSL https://get.gitlab.cn | /bin/bash                #配置极狐gitlab软件源镜像

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

sudo EXTERNAL_URL="http://192.168.193.130" apt-get install gitlab-jh     #开始安装gitlab

注:URL后面的参数可以是本机的IP,也可以为域名,如果设置域名需要确保域名解析到本机的IP即可。

EXTERNAL_URL 中配置的地址来访问安装成功的极狐GitLab 实例。用户名默认为 root 。如果在安装过程中指定了初始密码,则用初始密码登录,如果未指定密码,则系统会随机生成一个密码并存储在 /etc/gitlab/initial_root_password 文件中, 查看随机密码并使用 root 用户名登录。

注意:出于安全原因,24 小时后,/etc/gitlab/initial_root_password 会被第一次 gitlab-ctl reconfigure 自动删除,因此若使用随机密码登录,建议安装成功初始登录成功之后,立即修改初始密码。

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

gitlab常用命令

gitlab-ctl start # 启动所有gitlab组件

gitlab-ctl stop # 停止所有gitlab组件

gitlab-ctl restart # 重启所有gitlab组件

gitlab-ctl status # 查看服务状态

gitlab-ctl reconfigure # 启动服务

vim /etc/gitlab/gitlab.rb # 修改默认的配置文件

gitlab-ctl tail # 查看日志

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

4、登陆web页面查看

输入本机IP进行登陆

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

注:如果出现502错误 可以等一会再刷新看看 

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

默认用户是root

密码我们可以在/etc/gitlab/initial_root_password文件中进行查看

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

我们登陆上后先改密码

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linuxubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linuxubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linuxubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

修改完成后我们再次登陆

5、将gitlab页面设置为中文

登陆gitlab页面

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

跟着图上标的步骤来

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

把页面拉到下面找到 Localization  选项

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

选择中文简体

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

在页面的最下面选择保存更改

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

在回到主页就可以看到已设置为中文

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

6、新建项目

新建项目

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

选择创建空白项目

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

7、使用命令行的方式向gitlab推送代码

 git branch -a                      #查看分支的命令

git status                           #查看当前工作目录的状态

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

找一个文件上传到你目录下 我的是在/root 目录下

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

  1. #设置用户名、邮箱为gitlab上设置的邮箱

  2. git config --global user.name "yuansui@2527.com"

  3. git config --global user.email "yuansui@2527.com"

  4. git config --global --list           #查看邮箱

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

#然后输入上面保存的地址

git clone http://192.168.193.130/root/java-project.git

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

git add .                    #把目录下的所有文件上传到git

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

git commit -m "你的描述"                #提交信息格式

git commit -m "测试"

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

git push <链接(orgin是别名)> <本地仓库>:<远程分支>

git push origin master

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

然后我们在浏览器可以看到下面的消息

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

我们上面操作推送代码的时候选择的的maser分支所以这里选择maser分支查看

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

下图可以看出我们推送的文件

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux


1、Jenkins服务器安装部署

1、安装jdk17

sudo apt update                                            #更新软件包

sudo apt install openjdk-17-jdk                       # 下载jdk17

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

java -version                                                 #查看安装的 Java 版本信息

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

2、在Jenkins服务器安装git

sudo apt-get install git

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

echo $PATH                       #检查 PATH 变量

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

vim .bashrc      或者是 vim .bash_profile         #打开文件配置变量

export PATH=/usr/bin/git:$PATH                      #在文件尾部添加此变量

注意 文件路径 通常是 /usr/bin/git 或 /usr/local/bin/git

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

source ~/.bashrc         或者是 source ~/.bash_profile               #使命令生效

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

2、在Jenkins官网进行下载

Jenkins

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

下载Jenkins的war包到本地

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

将我们下载的war包传输到服务器内

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

启动我们的war包

java -jar jenkins.war                             #启动war包

Jenkins默认的端口是8080如果你需要指定端口的话可以使用--httpPort=选项 

java -jar jenkins.war --httpPort=8888      #启动war包并指定端口

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

如果启动时出现下面这种错误

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

解决办法

将jdk1.8升级到jdk11 错误显示最少需要jdk11

sudo apt install openjdk-11-jdk

将下图初始码复制下来

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

然后在网页访问本机的IP+8080端口 将上图保存的初始码粘贴到下图

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

创建你的管理员用户密码

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linuxubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

3、在Jenkins服务器安装maven

sudo apt install maven                     

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

配置环境变量

vim .bashrc  (或 ~/.bash_profile~/.profile,取决于你使用的是哪个shell)

在文件尾部添加下行内容

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

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

source ~/.bashrc                       #使修改生效

mvn -v                                       #查看版本信息

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux


2、测试服务器安装

apt install openjdk-8-jdk                   #安装java环境jdk1.8

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

sudo systemctl status ssh                       #查看ssh是否启动

sudo apt install -y openssh-server           #如果没安装用此命令安装

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

查看本机IP

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux


3、使用Jenkins

进入Jenkins页面我们先去安装插件

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linuxubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

安装maven

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

安装publish

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linuxubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux


4、Jenkins新建item

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

构建maven项目

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linuxubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

源码管理设置

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

在gitlab上查看地址

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

将上图获得的地址填写在下图 

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

Branches to bulid 配置 根据项目分支情况进行填写

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

Build 配置

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

跳转到页面找到最下面的新建maven

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

maven按照配置

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

登陆我们gitlab的页面查看项目中我们pom.xml文件的路径

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

Build 配置

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

我们再次打开一个新的Jenkins页面

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

找到 Publish over SSH 选项 添加后端发布服务器信息

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

填写信息然后选择高级继续填写信息

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

然后返回我们的配置 添加后端服务器

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linuxubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linuxubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

注:如果上图的路径不知道可以按照下图查看

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

构建一下看是否能成功

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linuxubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux


如果你的出现下图报错

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

解决办法

sudo apt install -y default-jdk


在测试服查看是否有文件

我们构建的时候看输出的内容

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

解决办法

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

再次进行编译查看  通过下图我们可以看到我们的文件已经传输完成

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

我们在测试服务器进行查看

因为我的虚拟机是图形化的所以文件路径和你们的应该有所不同

你们的话可以直接在家目录下有root目录

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

如果你感觉路径太长 可以按照下图进行更改

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

然后我们将服务器的文件删除

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

再次跑一下任务

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

然后再次进入测试服务器进行查看 通过下图我们可以看出更简单了

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

接下来我们让它传输完成后自动将jar包启动起来

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

再次跑一下服务然后在服务器查看

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux


5、Jenkins配置脚本

我们上面的配置可以实现文件传输后在后端服务器自动启动jar包(服务),但是有一个问题就是我们如果已经启动运行这一个jar包(一个服务),当我们在Jenkins跑服务的时候就无法启动新的jar包,端口会冲突,所以为了更加方便我们工作,我们可以写一个脚本来实现将老的jar包(服务)删除或者移动到指定文件夹,将老的服务停止,来释放端口,从而让我们新的jar包(服务)启动。

按照下图进行配置  为文件传输前的操作

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

这里我们先写好脚本的路径以及名字 下面我们在服务器创建脚本文件写脚本

注:脚本的服务器是我们发布服务器的路径,脚本也是在发布服务器上的

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

6、登陆到测试服务器写脚本

注:脚本的路径和上面我们写的路径必须要一样

vim /root/sy.sh

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

这是一个简单的shell脚本有需求可自己按照需求自己写

#!/bin/bash

# 删除历史数据
rm -rf /home/sy/data/my.*.jar

appname=$1

# 获取正在运行的jar包pid
pid=$(ps -ef | grep 'my' | grep 'java -jar' | awk '{print$2}')

# 如果pid为空,提示一下,否则,执行kill命令
if [ -z "$pid" ]
then
        echo "$appname 未启动"
else
        kill -9 $pid
        echo "$appname 正在停止...."
fi

# 等待一段时间,确保进程已经停止
sleep 5

# 再次检查进程是否已经停止
if ps -p $pid > /dev/null
then
        echo "$appname 停止失败"
else
        echo "$appname 已成功停止"
fi
 

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

7、回到Jenkins继续配置

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

保存后我们的配置也就完成了。

注:上面的配置可以提交代码后我们进行合并,就会自动部署更新代码也就是我们的jar包

就是说我们将新的代码提交到代码仓库,然后选择合并,在跑一下代码就可以自动将代码达成jar包自动传输到我们的服务器,脚本会自动将我们旧的jar包停止,将新的jar包启动。

但是需要我们手动的去合并和跑一下服务:下图就是跑服务  这是大多数公司常用的配置。

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux




4、拓展(不建议配置使用)

如果你想提交代码后不用再手动去合并和跑服务可以继续按下面的操作进行配置

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linuxubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linuxubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

2、安装插件

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linuxubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

3、打开插件的网址查看说明

Build Authorization Token Root | Jenkins pluginhttps://plugins.jenkins.io/build-token-root/ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

4、打开gitlab进行配置

选择我们的项目

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linuxubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linuxubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

注意这一步路径别写错了

http://192.168.26.110:8080/buildByToken/build?job=first&token=112233

说明:

http://192.168.26.110:8080/                 #是你Jenkins的访问路径

buildByToken/build?job=first                #是你Jenkins上的Item项目名称

&token=112233                                    #是你项目设置的身份令牌

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

触发事件按你们自己需求来

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

5、报错解决办法

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linuxubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux

按照第5步操作完成后然后再按照第4步重新添加一下webhooks就可以了

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。,jenkins,ci/cd,运维,gitlab,服务器,ubuntu,linux


以上配置完成了,但是不建议使用第四步扩展,这样会消耗更多的资源,而且每次提交代码都要构建一次服务 并不合理,同样也是需要手动合并才行。文章来源地址https://www.toymoban.com/news/detail-858563.html

到了这里,关于ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 云原生系列2-CICD持续集成部署-GitLab和Jenkins

    1、CICD持续集成部署 持续集成:简称 CI 思想:每天要多次将代码合并到主干,并进行集成,测试,这样就可以提早发现错误,进行修正。持续集成也属于DevOps运维开发。 CI持续集成的好处: 1、自动化集成部署,提高了集成效率。 2、更快的修复问题。 3、更快的进行交付。

    2024年02月02日
    浏览(43)
  • CI/CD持续集成持续发布(jenkins)

            在实际开发中,我们经常要一边开发一边测试,当然这里说的测试并不是程序员对自己代码的单元测试,而是同组程序员将代码提交后,由测试人员测试; 或者前后端分离后,经常会修改接口,然后重新部署; 这些情况都会涉及到频繁的打包部署; 手动打包常规步

    2024年02月14日
    浏览(68)
  • git视频教程Jenkins持续集成视频教程Git Gitlab Sonar教程

    @[TOC这里写自定义目录标题) https://edu.51cto.com/lesson/290903.html 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。 我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标

    2024年02月11日
    浏览(41)
  • 程序采用Jenkins 持续集成部署、发布以及常见问题、解决办法列表

        如果不采用工具的话,网站的发布更新是一个简单但麻烦的事情,在这个方面,jenkins是一个很好用的工具。Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,包括持续的软件版本发布/测试项目。并可监控外部调用执行的工作。今天在本博客平台上部

    2024年04月25日
    浏览(49)
  • Gitlab+Jenkins+Docker+Harbor+K8s集群搭建CICD平台(持续集成部署Hexo博客Demo)

    目录 涉及内容: 一、CICD服务器环境搭建 1、docker 环境安装 (1)、拉取镜像,启动并设置开机自启 (2)、配置docker加速器 2、安装并配置GitLab (1)、创建共享卷目录 (2)、创建 gitlab 容器 (3)、关闭容器修改配置文件 (4)、修改完配置文件之后。直接启动容器 (5)、相关

    2024年03月15日
    浏览(73)
  • (十四)devops持续集成开发——jenkins流水线使用pipeline方式发布项目

    本节内容我们使用另外一种方式pipeline实现项目的流水线部署发布,Jenkins Pipeline是一种允许以代码方式定义持续集成和持续交付流水线的工具。通过Jenkins Pipeline,可以将整个项目的构建、测试和部署过程以脚本的形式写入Jenkinsfile中,实现对整个流程的可视化管理和控制。在

    2024年02月21日
    浏览(60)
  • 一个springboot项目的jenkins持续集成配置

    目录 1.项目基本情况 2.jenkins的下载 1)  安装jdk 2)下载、启动和配置jenkins 3. 启动Jenkins 4. 安装Jenkins插件 5. 重启jenkins 6.jenkins工具的配置 1) jdk的路径配置 7.创建springboot项目的持续集成任务 1)  新建项目 2)代码拉取 3)  打包项目 4)启动jar程序 5)解决jenkins构建结束后终止所

    2024年02月10日
    浏览(41)
  • 持续集成工具Jenkins的使用之配置篇(二)

    上一篇 :持续集成工具Jenkins的安装配置之安装篇(一)-CSDN博客 接上文 Jenkins配置主要是针对创建构建任务前做的一些基本配置,这些配置有些是必须的,有些是可以帮我们提高效率的,总之都是Jenkins管理员都要会的一些操作,如下配置都并非必设项,也没有固定顺序 ,完全

    2024年01月23日
    浏览(55)
  • gitlab部署及整合Jenkins持续构建(四)sonarqube9.9安装和使用(一步一坑)

    官网给出的各种环境下安装postgresql步骤:https://www.postgresql.org/download/ 以 CentOS7 + jdk17 为例: yum安装完,默认的pgsql-13的数据目录在 /var/lib/pgsql/13/data/ 除非 /var 目录可用空间很大,否则需要修改数据目录 记录配置文件路径,修改 listen_addresses = \\\'*\\\' ,postgresql启动参数 定义哪些

    2024年02月02日
    浏览(41)
  • Jenkins CI/CD 持续集成专题三 Jenkins 使用shell脚本打包组件配置流程

    第六步 查看编译状态和产物 到这里,jenkins 配置shell脚本打包组件的完整配置流程就已经完成

    2024年04月29日
    浏览(58)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包