历上最详细的Jenkins自动化部署Springcloud文档教程
一、前期准备
系统环境
- Liunx 7.5.1804
- bash 4.2.46
- jdk 1.8 下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
相关软件及工程包
- Jenkins 2.138.2 下载地址:https://jenkins.io/download/ (只需下载WAR包)
- WinSCP
- Xshell 6
- git 2.17.0 下载地址:https://mirrors.edge.kernel.org/pub/software/scm/git/
- maven 3.3.9 下载地址:http://maven.apache.org/docs/3.3.9/release-notes.html
二、搭建
在这里先简单概述下大致流程
- jdk安装、配置
- Jenkins安装、配置
- git安装、配置
- maven安装、配置
- 远程部署插件安装
- springcloud分布式项目部署
Liunx下安装JDK环境配置
第一步、将下载好的jdk包上传到服务器上

第二步、执行如下解压命令进行解压:
1、cd /home/cmfchina
2、tar -zxvf jdk-8u131-linux-x64.tar.gz
解压完成之后,找到【jdk1.8.0_131】的目录

我们要将解压后的【jdk1.8.0_131】里面的所有数据移动到我们需要安装的文件夹当中,我们打算将jdk安装在usr/java当中,我们在usr目录下新建一个java文件夹,命令如下:
mkdir /usr/java
再将【jdk1.8.0_131】里的数据拷贝至java目录下
mv /home/cmfchina/jdk1.8.0_131 /usr/java
第三步、配置环境变量
直接输入以下命令,打开配置文件
vim /etc/profile
在profile文件最后加上如下内容(使用i进入编辑模式):
export JAVA_HOME=/usr/java/jdk1.8.0_131
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}
效果如下图所示:

然后,保存并退出(先按ESC在输入wq!)
最后、检查
输入如下命令:
java -version
如果出现版本号,则说明安装成功。
Liunx下安装Jenkins及基础配置
第一步、启动Jenkins
将下载的WAR包上次到服务器指定目录中
后台启动Jenkins,命令如下
java -jar /usr/lib/jenkins/jenkins.war --httpPort=8080 &
–httpPort:指定项目端口,默认8080
第二步,初始化Jenkins程序
打开游览器 输入对应的ip:port地址

按照上图中的地址找到对应的密码文件,然后登陆系统
cd /root/.jenkins/secrets/initialAdminPassword
选择建议插件安装

安装完成后,创建用户

接下来就可以创建任务了

Jenkins配置git
第一步、安装及配置git
1、使用yum安装
输入如下指令:
yum install git
等待安装完成
2、验证安装结果
git --version
查看安装的Git版本,验证是否安装成功;
注意
使用yum安装确实简单方便,但yum存在一个问题就是安装的版本不好控制,安装的版本为1.8.3,这个版本太老了。
因此如果需要安装最新的版本Git,可以从github下载最新的源码进行编译,然后安装。
5、源码编译安装Git
大体的安装步骤如下:
①、获取github最新的Git安装包下载链接,进入Linux服务器,执行下载,命令为:
wget https://github.com/git/git/archive/v2.17.0.tar.gz
②、压缩包解压,命令为:
tar -zxvf v2.17.0.tar.gz
③、安装编译源码所需依赖,命令为:
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
④、安装依赖时,yum自动安装了Git,需要卸载旧版本Git,命令为:
yum remove git
⑤、进入解压后的文件夹,命令
cd git-2.17.0
然后执行编译,命令为
make prefix=/usr/local/git all
⑥、安装Git至/usr/local/git路径,命令为
make prefix=/usr/local/git install
⑦、打开环境变量配置文件,命令
vim /etc/profile
在底部加上Git相关配置信息
PATH=$PATH:/usr/local/git/bin
export PATH
然后保存,退出!
记得执行下profile 文件
source profile
⑧、输入命令
git --version
查看安装的git版本,校验通过,安装成功。
最后配置公钥
cd ~/.ssh
ssh-keygen -t rsa -b 4096 -C “your_email@example.com”
可以看到当前目录下多出两个文件 id_rsa.pub 和 id_rsa 带后缀是公钥,不带是私钥
vim id_rsa.pub 打开公钥,将全部内容复制(私钥别动)
然后进入github 登录>点头像>点settings>点SSH and GPG keys>点New SSH key
Title:随便输,尽量规范
key:粘贴刚才复制的 公钥内容 。最后点击 Add SSH key
第二步在jenkins上配置git
1、在“系统管理“页面找到“插件管理”

在“可选插件中”搜索“Git plugin”

找到后点击安装,耐心等待~~~~
2、jenkins中配置Git.exe的位置
在“系统管理“页面找到“全局工具配置”

配置本地的git路径

3、为jenkins配置git拉取凭证
将之前生成的私钥复制到文本框中

Maven配置
1、下载maven 源码文件.tar.gz
2、解压源文件sudo tar -zxvf .tar.gz文件
3、配置/etc/profile文件
MAVEN_HOME=/app/java/maven/apache-maven-3.3.9
export MAVEN_HOME
export PATH=
P
A
T
H
:
{PATH}:
PATH:{MAVEN_HOME}/bin
4、source /etc/profile是资源文件生效(这样就不用重启系统了)
5、使用mvn -v 查看
Jenkins 远程部署插件安装
1、在 系统设置->插件管理->可选插件 搜索 Publish Over SSH,选中点击立即安装即可安装

2、配置远程连接信息
一、找到jenkins服务器的公钥文件

二、复制到远程目标服务器中的/.ssh目录下的authorize_keys文件中(如果文件不存在,就新建后复制)

三、在jenkins设置中 找到全局配置->SSH插件 点击add

Name:名字 随便取
Hostname:主机地址
Username:用户名
Remote Directory:根目录(这里就决定了把jar上传到哪里,路径要提前新建好)
然后 测试一下

创建springboot部署任务
一、点击首页 new 任务 后,选取构建maven项目






在“Source files”中输入项目编译后jar、war保存的相对路径地址和文件名,注意这里的相对路径是相对于项目的根目录来的,maven项目一般都在target下;接下来“Remove prefix”就是用来配置去掉上一步配置的待部署文件的路径地址的,这样jenkins就能够知道具体的要传输的文件名了;“Remote directory”就是配置需要传输的目标地址的相对路径,这个相对路径是相对于在ssh中配置的用户的根目录来的;最后需要配置的就是“Exec command”就是在文件传输后需要执行的shell命令,这里可以将要远程执行的命令直接维护在这里,也可以将部署和运行springboot项目的命令写在shell里
三、附件
远程部署脚本
#!/bin/bash
BAKFOLDER="/u000/iptv/iptv-wx/bak/"
BAKFOLDERTEST="/u000/iptv/iptv-wx/bak/mp"
FOLDER="/u000/iptv/iptv-wx/mp"
FILENAME="iptv-mp-0.0.1-SNAPSHOT.jar"
FILE="/u000/iptv/iptv-wx/mp/$FILENAME"
BAKPATH="mp/"
#time
PREFIX="time="
TIME=`date +%F`
TIMES=`date +%T`
KONGGE="--"
VER="1.0"
#关掉上次启动的项目
ID=`ps -ef|grep ${FILENAME} | grep -v "grep" | awk '{print $2}'`
#echo "port is :$ID"
kill -9 $ID
#备份
if [ ! -d "$BAKFOLDER" ]
then
mkdir $BAKFOLDER
fi
if [ ! -d "$BAKFOLDERTEST" ]
then
mkdir $BAKFOLDERTEST
fi
if [ -f "$FILE" ]
then
cp $FILE $BAKFOLDER$BAKPATH$VER$PREFIX$TIME$KONGGE$TIMES.jar
fi
#启动
cd ${FOLDER}
chmod 777 ${FILENAME}
BUILD_ID=dontKillMe nohup /opt/java/jdk1.8.0_171/bin/java -jar ${FILENAME} --spring.profiles.active=test> ${FOLDER}/$TIME$KONGGE$TIMES.log 2>1&
#echo "start success!"
exit 0在这里插入代码片
本文详细介绍了如何在Liunx环境下,通过Jenkins进行远程自动化部署Springcloud项目。涉及内容包括JDK、Jenkins、git、maven的安装配置,以及Jenkins远程部署插件的使用和Springboot项目的部署任务创建。
&spm=1001.2101.3001.5002&articleId=83900338&d=1&t=3&u=c4cbbcdb5f5f49fcb610b5d004acd9a4)
1万+

被折叠的 条评论
为什么被折叠?



