环境:

  • JDK 1. 8
  • Maven
  • Docker
  • Git
  • CentOS 7

一、Jenkins(安装)

1、在liunx系统中安装相关软件

1.1 安装java环境(jdk环境)

​ 请参考我的这篇博客有详细的安装步骤:CentOS7 安装 JDK 8

​ 使用命令查看jdk是否安装成功

image-20210410222120657

1.2 安装maven环境

第一步 上传maven安装介质

1
cd /usr/local

下载地址:apache-maven-3.6.1-bin.tar.gz

image-20210410224017964

第二步:解压安装包

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

第三步:建立软连接

1
ln -s /usr/local/apache-maven-3.6.1/ /usr/local/maven

第四步:修改环境变量

1
vim /etc/profile

添加以下内容:

1
2
3
export MAVEN_HOME=/usr/local/maven

export PATH=$PATH:$MAVEN_HOME/bin

image-20210410224829449

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

1
source /etc/profile

第五步: 测试是否安装成功

1
mvn –v

1.3 安装git

1
yum -y install git

image-20210410225152612

1.4 安装docker

参考文档:https://help.aliyun.com/document_detail/60742.html?spm=a2c4g.11174283.6.548.24c14541ssYFIZ

第一步:安装必要的一些系统工具

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

第二步:添加软件源信息

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

第三步:更新并安装Docker-CE

1
2
3
yum makecache fast

yum -y install docker-ce

第四步:开启Docker服务

1
service docker start

第五步: 测试是否安装成功

1
docker -v

image-20210410230803418

1.5 安装Jenkins

第一步:上传或下载安装包

1
cd /usr/local/jenkins

jenkins.war 下载:http://mirrors.jenkins.io/war-stable/latest/jenkins.war

image-20210410232717031

第二步:启动

1
nohup java -jar /usr/local/jenkins/jenkins.war >/usr/local/jenkins/jenkins.out &

访问

image-20210410232649690

1.6 解锁jenkins

获取管理员密码

image-20210411125706382

1
cat /root/.jenkins/secrets/initialAdminPassword

image-20210411125755267

  • 进入安装插件页面,不要往下进行了,下载插件会很慢,配置国内镜像,为了提高下载速度,关掉浏览器,去配置镜像

image-20210411130017449

配置国内镜像

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

示例:

1
2
# 这里根据我自己的路径示例,如果安装位置不同,请根据自己的情况
cd /root/.jenkins/updates #进入更新配置位置

image-20210411130500027

运行以下指令,更新镜像

1
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

image-20210411130629151

注意: 运行镜像源之前一定要把jenkins关闭,进程杀死,在进入安装目录进行更新镜像

1
2
# 查询进程
ps -ef | grep jenkins

image-20210411130839877

1
2
# 杀死进程
kill -9 进程号

image-20210411131206206

重启jenkins,运行管理界面,安装插件

image-20210411131718420

image-20210411132326317

安装插件之后,插件管理员用户名和密码

image-20210411132420768

实例配置

image-20210411132521477

安装完成

image-20210411132600948

二、Jenkins(配置)

1、配置自动化部署需要环境

​ 选择 Manage Jenkins ==> Global Tool Configuration

image-20210411132849529

image-20210411132919641

2、配置jdk环境

JAVA_HOME 请根据自己情况来配置

image-20210411133359638

3、配置maven环境

image-20210411134732819

4、配置git环境

查看git安装路径which git

image-20210411134852131

三、Jenkins(自动化过程)

1、准备工作

​ 拉取我已经修改好的项目:git clone https://gitee.com/oycodesite/demo-jenkins.git

image-20210411142221061

检查 Dockerfile文件

image-20210411142235615

检查 pom文件添加打包类型 和 maven插件

image-20210411142311675

image-20210411142324856

2、在jenkins管理界面创建自动化任务

新建

image-20210411142418088

输入任务名称

image-20210411142454894

image-20210411142508298

把代码提交码云Git仓库里面 (或者使用我的Git仓库里面的)

image-20210411142644397

image-20210411142752928

修改脚本路径,进行复制

docker 脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#!/bin/bash
#maven打包
mvn clean package
echo 'package ok!'
echo 'build start!'
cd ./infrastructure/eureka_server
service_name="eureka-server"
service_prot=8761
#查看镜像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

修改:

1
2
3
cd ./
service_name="demojenkins"
service_prot=8111

image-20210411142959125

image-20210411143225028

构建结构:

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

IMG_256

  • 蓝色:构建成功;

IMG_257

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

IMG_258

  • 红色:构建失败;

IMG_259

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

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

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

3、执行任务

  • 需要docker启动起来 service docker start

点击Build Now执行任务

image-20210411143528613

或者

image-20210411143558876

image-20210411143733106

看到控制台日志输出

image-20210411143832315

image-20210411144115396

测试

image-20210411144229376

四、扩充 idea 打包

第一步

image-20210411144852931

第二步

image-20210411144937147

第三步: 选择JAR

image-20210411145026366

第四步:选择Main Class

image-20210411145137465

第五步: 看到以下信息后,点击ok

image-20210411145206780

第六步: 构建

image-20210411145241215

第七步

image-20210411145303115

image-20210411145327286

构建后的效果

image-20210411145403515