Jenkins自动化部署(Jenkins+Maven+Tomcat+Github)

初次学习使用Jenkins,写下这篇博客做笔记,也希望可以帮到其他人。

首先,我们需要使用虚拟机安装一个Linux系统,安装方法可以自行查找,也可以参照我的另一篇文章:

Linux:使用虚拟机VirtualBox安装centOS7
https://blog.csdn.net/sun_of_sun/article/details/85257189

目录

1、安装Java环境
2、安装配置Git Github
3、安装配置Maven
4、安装配置Tomcat
5、安装Jenkins,并将Linux注册到Jenkins上
6、部署一个简单的项目


1、安装Java环境

使用yum命令安装JDK,通过yum默认安装的路径为/usr/lib/jvm

yum install java

除了yum命令,也可使用手动解压安装的方式 https://www.cnblogs.com/lamp01/p/8932740.html

输入java -version检查jdk环境是否安装成功,若如下图一样出现版本号,则证明安装成功
在这里插入图片描述
我晕,可以看到,这里安装的居然只是jre环境,好坑,所以需要再安装一个jdk环境

yum search java-1.8.0

可以找到java开发环境,复制
在这里插入图片描述

yum install java-1.8.0-openjdk-devel.x86_64

到此为止,安装jdk环境成功


2、安装配置Git Github
yum install git

输入git version查看是否安装成功
在这里插入图片描述
配置git

git config --global user.name "你的github用户名"
git config --global user.email "注册github时的邮箱"

在这里插入图片描述
生成git秘钥,红框圈出的部分为秘钥路径

ssh-keygen -t rsa -C "注册github时的邮箱"

在这里插入图片描述
id_rsa.pub为公钥,复制公钥
vim id_rsa.pub
在这里插入图片描述
登录自己的github,setting→SSH and GPG keys→New SSH Key,将公钥粘贴进去
在这里插入图片描述

3、安装配置Maven

http://maven.apache.org/download.cgi
选择bin.zip右键复制链接地址
在这里插入图片描述
进入到想要下载Maven的目录,在linux命令行输入“wget 刚刚复制的链接”即可下载maven

wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.0/binaries/apache-maven-3.6.0-bin.zip

下载成功后unzip解压
在这里插入图片描述
进入到maven的安装目录下,输入pwd获取maven完整安装目录,复制路径
在这里插入图片描述
vim打开配置文件,按i进入插入模式,在文件末尾把路径粘贴进去

vim /etc/profile

在这里插入图片描述
编辑完成后按esc,然后输入“:wq”回车(一定要输入冒号),保存并退出
. /etc/profile重新加载配置文件
mvn -version检验是否配置成功
在这里插入图片描述


4、安装配置Tomcat

https://tomcat.apache.org/download-90.cgi
同样右键复制下载链接,使用wget下载,unzip解压安装
在这里插入图片描述
在这里插入图片描述
进入Tomcat安装目录,为其赋予执行权限
在这里插入图片描述
修改Tomcat端口号,以免发生冲突

vim conf/server.xml

将8080修改为8090,esc,“:wq”保存并退出
在这里插入图片描述
在安装目录下输入bin/startup.sh,启动Tomcat
在这里插入图片描述
现在可以用浏览器访问Tomcat试试
地址栏输入linux主机ip:8090,出现以下页面就是安装成功了
在这里插入图片描述


5、安装Jenkins,并将Linux注册到Jenkins上

(!!这次要把Jenkins安装到windows上!!)
官网下载Jenkins的war包:https://jenkins.io/download/
在这里插入图片描述
进入到下载目录下,通过java -jar jenkins.war安装Jenkins
在这里插入图片描述
然后在浏览器中输入localhost:8080,到红色文字的路径下,复制密码
在这里插入图片描述
选择左侧默认安装
在这里插入图片描述
安装等待……
在这里插入图片描述
创建用户
在这里插入图片描述
系统管理→插件管理→搜索rebuilder和safe restart两个插件安装
在这里插入图片描述
系统管理→全局安全配置,选择安全矩阵,将刚才注册的用户加入进去,并赋予所有权限
在这里插入图片描述
系统管理→节点管理→新建节点
在这里插入图片描述
在这里插入图片描述
host主机为Linux主机的ip,add添加Linux用户名密码
在这里插入图片描述
在这里插入图片描述
把Linux中git的路径配置在节点属性里
在这里插入图片描述
保存配置,尝试连接到Linux主机
在这里插入图片描述
在这里插入图片描述
连接成功在这里插入图片描述
创建新任务验证是否可以成功运行:
在这里插入图片描述
在这里插入图片描述
点击Ok
勾选Restrict where this project can be run,并且在下方输入刚才配置的linux节点名称,使得该任务只能在该节点上运行
在这里插入图片描述
添加构建步骤,选择execute shell
在这里插入图片描述
输入一个简单的命令ifconfig(查询IP地址)验证任务是否能够正常运行
在这里插入图片描述
保存,回到主页面点击立即构建
在这里插入图片描述
在这里插入图片描述
查看日志
在这里插入图片描述
远程运行了shell命令,并且查到了Linux主机的IP地址,说明配置正确
在这里插入图片描述


6、部署一个简单的项目

(本地要装好java环境,配置好maven,数据库等)
选择一个简单的git项目fork到自己的github,clone到本地
在这里插入图片描述
在这里插入图片描述
项目中的deploy.sh为:

#!/usr/bin/env bash
#编译+部署order站点

#需要配置如下参数
# 项目路径, 在Execute Shell中配置项目路径, pwd 就可以获得该项目路径
# export PROJ_PATH=这个jenkins任务在部署机器上的路径

# 输入你的环境上tomcat的全路径
# export TOMCAT_APP_PATH=tomcat在部署机器上的路径

### base 函数
killTomcat()
{
    pid=`ps -ef|grep tomcat|grep java|awk '{print $2}'`
    echo "tomcat Id list :$pid"
    if [ "$pid" = "" ]
    then
      echo "no tomcat pid alive"
    else
      kill -9 $pid
    fi
}
cd $PROJ_PATH/order
mvn clean install

# 停tomcat
killTomcat

# 删除原有工程
rm -rf $TOMCAT_APP_PATH/webapps/ROOT
rm -f $TOMCAT_APP_PATH/webapps/ROOT.war
rm -f $TOMCAT_APP_PATH/webapps/order.war

# 复制新的工程
cp $PROJ_PATH/order/target/order.war $TOMCAT_APP_PATH/webapps/

cd $TOMCAT_APP_PATH/webapps/
mv order.war ROOT.war

# 启动Tomcat
cd $TOMCAT_APP_PATH/
sh bin/startup.sh

新建一个Jenkins任务
在这里插入图片描述
在这里插入图片描述
任务描述
在这里插入图片描述
勾选Restrict where this project can be run,选择之前配置好的Linux节点
在这里插入图片描述
复制github上的项目地址
在这里插入图片描述
勾选git,把链接粘贴进去
在这里插入图片描述
add 选择图中的那个
在这里插入图片描述
这个操作表示会将git库上的源码下载到当前路径下的order文件夹中:
在这里插入图片描述
构建选择execute shell
在这里插入图片描述

BUILD_ID=DONTKILLME

这个是为了当Jenkins部署完server任务之后,server的线程不要被清理掉,在Jenkins任务执行完成后,关闭Jenkins进程,而保留server进程

. /etc/profile

加载配置参数

接下来配置运行参数:

# 项目路径, 在Execute Shell中配置项目路径, pwd 命令就可以获得该项目路径
export PROJ_PATH=这个jenkins任务在部署机器上的路径
# 输入你的环境上tomcat的全路径
export TOMCAT_APP_PATH=tomcat在部署机器上的路径

查看一下tomcat的路径,复制到TOMCAT_APP_PATH
在这里插入图片描述
接下来运行部署脚本

sh $PROJ_PATH/order/deploy.sh

全部填写完成(注意pwd的引号是键盘esc下面那个,与“~”在一起的那个反引号):

BUILD_ID=DONTKILLME
. /etc/profile
export PROJ_PATH=`pwd`
export TOMCAT_APP_PATH=/root/apache-tomcat-9.0.14
sh $PROJ_PATH/order/deploy.sh

在这里插入图片描述

接下来运行一下部署任务,确定执行结果是否成功:
在这里插入图片描述
构建成功
在这里插入图片描述
点进左下方本次构建的记录,再点击Console Output,查看这次构建的log
在这里插入图片描述
访问Linux上部署的项目,成功~
在这里插入图片描述

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Jenkins是一个开源的自动化工具,可以实现自动构建、测试和部署软件,对于项目开发的自动化流程非常有帮助。而GitHub是一个代码托管平台,可以帮助团队协同开发和版本控制。Spring Boot是一个Java开发框架,可以快速构建独立的、生产级别的应用程序。 Jenkins可以与GitHub和Spring Boot集成,实现自动部署的流程。首先,我们需要在Jenkins中配置GitHub插件,用于与代码仓库进行通信。然后,我们可以设置一个Jenkins的构建任务,指定从特定的GitHub仓库拉取代码,并进行构建和测试。构建任务可以使用Maven或Gradle等工具构建Spring Boot项目。 在构建和测试成功后,我们可以配置Jenkins部署任务。部署任务可以通过SSH或其他协议连接到应用程序的目标服务器,并将构建生成的可执行文件或部署部署到目标环境中。在部署之前,我们可以通过Jenkins设置不同的环境变量或配置文件,以适应不同的部署环境。 当我们的代码仓库有新的提交时,Jenkins可以自动检测到变化并触发构建和部署过程,从而实现自动化的持续集成和交付。我们可以通过Jenkins的Web界面来监控构建和部署的状态,查看日志和报告,以及进行必要的调试和操作。 通过JenkinsGitHub和Spring Boot的组合,我们可以极大地提高开发团队的效率和软件交付的质量。自动化部署可以减少人工操作的错误,并且可以更快地交付新功能和修复。同时,持续集成和持续交付的流程也可以帮助我们更好地管理代码和版本,提高团队的合作和沟通效率。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值