栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Jenkins自动化部署

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Jenkins自动化部署

Jenkins自动化部署 1.基础环境搭建

参考:https://llinp.cn/articles/2022/01/01/1640998831081.html

1.1 虚拟机环境搭建 1.2 安装jdk运行环境
#进入到src目录下
cd /usr/local/src/

#创建java文件目录
mkdir java

#将下载好的jdk压缩包存放到java目录中,并使用解压命令进行解压
tar -zxvf jdk-8u212-linux-x64.tar.gz


#修改环境变量
vim /etc/profile
 
#set java env                
JAVA_HOME=/usr/local/src/java/jdk1.8.0_212
JAVA_BIN=/usr/local/src/java/jdk1.8.0_212/bin
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME JAVA_BIN PATH CLASSPATH

#通过命令source /etc/profile让profile文件立即生效
source /etc/profile

#测试是否安装成功
java -version

出现下图的效果就说明jdk环境已经配置好了

1.3 安装maven
#第一步:上传或下载安装包
cd/usr/local
apache-maven-3.6.1-bin.tar.gz

#第二步:解压安装包
tar -zxvf apache-maven-3.6.1-bin.tar.gz

#第三步:建立软连接
ln -s /usr/local/apache-maven-3.6.1/ /usr/local/maven

#第四步:修改环境变量
vim /etc/profile

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

#通过命令source /etc/profile让profile文件立即生效
source /etc/profile

#第五步、测试是否安装成功
mvn –v

1.4 安装git
yum -y install git
1.5安装docker
#验证docker是否安装好, 命令查看docker的版本,虚拟机中的docker已经装好了,1.7.3到1.7.1中的安装命令不要执行。
docker version

#卸载老版本的 docker 及其相关依赖
sudo yum remove docker docker-common container-selinux docker-selinux docker-engine

#安装 yum-utils**,它提供了** yum-config-manager**,可用来管理yum源**
sudo yum install -y yum-utils

#添加yum源
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

#更新索引
sudo yum makecache fast

#安装 docker-ce
sudo yum install docker-ce

#查看docker状态
systemctl status docker

#启动 docker
systemctl start docker

# 启动
service docker start
# 停止
service docker stop
# 重启
service docker restart 

#验证是否安装成功
docker info

#查看装好的镜像
docker images

#查看容器
#显示所有容器
docker ps -a 
#显示所有正在运行的容器
docker ps 

详细安装教程参见:

https://llinp.cn/articles/2022/01/09/1641738726437.html#toc_h2_0

2.安装jekins

下载jenkins

官方地址:https://www.jenkins.io/download/

安装

#第一步:上传或下载安装包
cd/usr/local/jenkins
jenkins.war

#第二步:启动
#nohup-后台静默启动 
#/usr/local/jenkins/jenkins.war war包路径
#/usr/local/jenkins/jenkins.out 日志输入路径
#nohup & 后台静默启动
nohup java -jar  /usr/local/jenkins/jenkins.war >/usr/local/jenkins/jenkins.out &

#第三步:访问
http://ip:8080

安装成功之后的效果,刚开始访问会有一个初始化界面不需要操作等待即可,如果等待很久没有变化则kill -9 进程号,重新启动即可

初始化界面

密码解锁

cat /root/.jenkins/secrets/initialAdminPassword

注意默认是国外镜像,下载非常慢。建议到此关闭浏览器配置国内的镜像

3.配置国内的镜像

官方下载插件慢 更新下载地址

cd {你的Jenkins工作目录}/updates #进入更新配置位置

#将镜像地址替换曾
sed -i 's/http://updates.jenkins-ci.org/download/https://mirrors.tuna.tsinghua.edu.cn/jenkins/g' default.json && sed -i 's/http://www.google.com/https://www.baidu.com/g' default.json

这是直接修改的配置文件,如果前边Jenkins用sudo启动的话,那么这里的两个sed前均需要加上sudo(linux登录账户不是超级管理员的话)

3.1 停止jenkins
#查看jenkins进程
ps -ef|grep jenkins

#杀掉进程,停止jenkins
kill -9 37820

进入到 cd /root/.jenkins目录中

cd /root/.jenkins

进入updates目录

cd updates/

执行语句替换镜像地址为国内镜像地址

sed -i 's/http://updates.jenkins-ci.org/download/https://mirrors.tuna.tsinghua.edu.cn/jenkins/g' default.json && sed -i 's/http://www.google.com/https://www.baidu.com/g' default.json

查看替换后的default.json内容(cat、tail都可以查看文件内容)

tail default.json
或
cat default.json 

重启jenkins

nohup java -jar  /usr/local/jenkins/jenkins.war >/usr/local/jenkins/jenkins.out &
4.安装插件

选择安装推荐的插件

安装中

安装成功

正常填写即可

配置访问地址

这里默认端口是8080根据需要进行切换

进入到这个界面jenkins的安装就完成了

5.jenkins配置

jenkins的配置准备工作

1.下载jdk

2.下载maven

3.下载git

4.下载jenkins.war https://jenkins.io/index.html

下载地址:

链接:https://pan.baidu.com/s/1E-uQbZLVRGWkR_14xuPCLg
提取码:35sv

登录

jenkins管理界面

进入全局配置

5.1 配置jdk
#查看jdk安装路径
which jdk

这里我的jdk安装路径是/usr/local/src/java/jdk1.8.0_212

5.2配置maven

5.3配置git
#查看git安装路径
which git

6.jenkins自动化部署 6.1修改项目

修改pom文件

修改打包方式

 jar

打包插件

 
        demojenkins
        
            
                org.springframework.boot
                spring-boot-maven-plugin
            
        
    
6.2在jenkins管理界面创建自动化任务

创建item

源码管理填入项目git地址

添加用户名和密码

构建环境

脚本文件

#!/bin/bash
#maven打包
mvn clean package
echo 'package ok!'
echo 'build start!'
cd ./
service_name="demojenkins"
service_prot=8761
#查看镜像id 判断demojenkins镜像是否存在
IID=$(docker images | grep "$service_name" | awk '{print $3}')
echo "IID $IID"
if [ -n "$IID" ]
then
	#如果存在则删除镜像
    echo "exist $SERVER_NAME image,IID=$IID"
    #删除镜像
    docker rmi -f $service_name
    echo "delete $SERVER_NAME image"
    #删除之后重新构建
    docker build -t $service_name .
    echo "build $SERVER_NAME image"
else
	#不存在则直接构建
    echo "no exist $SERVER_NAME image,build docker"
    #构建
    docker build -t $service_name .
    echo "build $SERVER_NAME image"
fi
#查看容器id,查看有哪些正在运行的容器
CID=$(docker ps | grep "$SERVER_NAME" | awk '{print $1}')
echo "CID $CID"
if [ -n "$CID" ]
then
	#如果存在相同的容器则停止删除
    echo "exist $SERVER_NAME container,CID=$CID"
    #停止
    docker stop $service_name
    #删除容器
    docker rm $service_name
else
    echo "no exist $SERVER_NAME container"
fi
#启动,创建容器
docker run -d --name $service_name --net=host -p $service_prot:$service_prot $service_name
#查看启动日志,根据选择是否查看
#docker logs -f  $service_name

构建之前需要启动docker

开始执行任务

查看控制台输出

至此项目就构建完成了

最终效果

6.3补充

构建结构

我这里用到的jenkins是2.319.2的版本图片已经做了改变,图标的表示可以根据对于的解释来看

第一列是 “上次构建状态显示”,是一个圆形图标,一般分为四种:

蓝色:构建成功;

黄色:不确定,可能构建成功,但包含错误;

红色:构建失败;

灰色:项目从未构建过,或者被禁用;

如上显示蓝色,表示构建成功。

注意:手动触发构建的时间与自动定时构建的时间互不影响。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1020678.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号