jenkins持续集成 自动化部署

一、环境准备

1.1 Java环境

(1)安装jdk1.8

yum -y install java-1.8.0-openjdk*

(2)执行以下命令查看是否安装成功

java -version

1.2 安装maven

(1)将安装包上传到Linux服务器,解压缩

tar -zxvf apache-maven-3.6.1-bin.tar.gz

(2)进入maven安装目录,创建仓库存储目录

cd /usr/local/maven/apache-maven-3.8.5/

mkdir ck
(3)进入cd conf目录,编辑 vi settings.xml文件,找到localRepository下面复制一行加上/usr/local/apache-maven-3.6.3/ck

/usr/local/apache-maven-3.6.3/ck

<mirror>
  <id>alimaven</id>
  <name>aliyun maven</name>
  <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
  <mirrorOf>central</mirrorOf>
</mirror>

(4)配置maven环境变量,编辑:vi /etc/profile 文件,翻到最后一行加上

export MAVEN_HOME=/usr/local/maven-3.8.6 export
PATH= M A V E N H O M E / b i n : MAVEN_HOME/bin: MAVENHOME/bin:PATH

如果配置文件有问题,重新加载之后会导致很多命令无法使用。
解决方案:(命令行输入)

export PATH=/bin:/usr/bin:$PATH source /etc/profile

(5)重新加载一下,source /etc/profile 使新增配置生效,如下:

source /etc/profil

(6)到此以安装完成,测试一下,输入命令:mvn -v

1.3 安装Git

yum -y install git

1.4 安装docker

(1)安装必要的一些系统工具

yum install -y yum-utils device-mapper-persistent-data lvm2

(2)添加软件源信息

yum-config-manager --add-repo
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

(3)更新并安装Docker-CE

centos7下:yum makecache fast
centos8下: dnf makecache yum -y install
docker-ce

(4)开启Docker服务

service docker start

(5)测试是否安装成功

docker -v

1.5 安装jenkins

(1)将jenkins.war上传到服务器
https://www.jenkins.io/download/

(2)启动

nohup java -jar /usr/local/jenkins/jenkins.war

/usr/local/jenkins/jenkins.out &

点两次回车
(3)访问
http://ip:8080
在这里插入图片描述

在linux控制台输入命令:

cat /root/.jenkins/secrets/initialAdminPassword
在这里插入图片描述
接下来:
注意:先不要下载插件,先配置国内镜像!
在这里插入图片描述

官方下载插件慢 更新下载地址
cd /root/.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,选择安装推荐的插件
在这里插入图片描述

最后,安装完成
在这里插入图片描述

jenkins环境配置
(1)Jenkins管理控制台,点击manage jenkins;
在这里插入图片描述

(2)点击全局工具配置
在这里插入图片描述

1、配置jdk环境
在这里插入图片描述

2、配置maven环境
在这里插入图片描述

3、配置Git环境
在这里插入图片描述

二、jenkins自动化过程

(1)添加docker文件

FROM openjdk:8-jdk-alpine
VOLUME /tmp
COPY ./target/jenkinsDemo-0.0.1-SNAPSHOT.jar demojenkins.jar
ENTRYPOINT ["java","-jar","/demojenkins.jar", "&"]

(2)修改pom文件,添加项目打包类型和添加maven插件

在这里插入图片描述

在这里插入图片描述

(3)将项目托管到git代码平台(gitee或github)

在这里插入图片描述

切换分支
在这里插入图片描述

(4)在jenkins管理界面创建自动化任务

管理界面新建item
在这里插入图片描述

在这里插入图片描述

(5)执行脚本

在这里插入图片描述

修改docker脚本
在这里插入图片描述

#!/bin/bash
#maven打包
mvn clean package
echo 'package ok!'
echo 'build start!'
cd ./
service_name="demojenkins"
service_prot=8001
#查看镜像id
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

(6)开始构建

先从git上拉去代码,
在这里插入图片描述

这个过程会下载大量依赖,执行shell脚本进行打包
在这里插入图片描述

执行docker脚本,
在这里插入图片描述

最后,
在这里插入图片描述

程序自动打包完成部署,浏览器访问项目对应地址即可。
在这里插入图片描述

浏览器访问:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_42194695/article/details/127935288