前言

我的centos服务器以及安装好了docker的,下面直接开始安装Jenkins

安装Jenkins

  • 查看docker版本
docker -v
  • docker 所有 image 文件
docker image ls
  • 启动 docker
# service 命令的用法 $ sudo service docker start
# systemctl 命令的用法 $ sudo systemctl start docker

image.png

这里把Jenkins默认8080端口修改为8040
安装成功后:访问 http://39.102.56.91:8040/【账号为wulongbo,密码为wulongbo945108】
image.png

Jenkins配置

环境配置

image.png
image.png
这里 JAVA_HOME路径 我们从服务器查

  • 首先进入jenkins docker容器
docker exec -it jenkins /bin/bash
  • 查看 java 版本
java -version
  • 查看jdk的安装目录
echo $JAVA_HOME

image.png

  • 安装maven

image.png

  • 安装maven插件 Maven Integration

image.png
image.png

  • 等待安装完毕后重启!

image.png

  • 新建任务

image.png
image.png

  • 配置

image.png
image.png

  • 添加 Credentials

image.png

  • 选择刚刚添加的账号密码

image.png

  • 添加打包命令

image.png

  • 保存
  • 立即构建

image.png

  • 点击进度条进入控制台

image.png

  • 构建成功

image.png

  • docker Jenkins容器寻找到jar包

image.png

image.png

  • 自动化运行脚本【点击项目-->配置】

image.png

  • 引入shell 脚本

image.png
JAR_PATHJAR_WORK_PATH路径填写按如下截图寻找进入控制台copy
image.png
image.png

#!/bin/bash
## 服务名称(最好和发布名称相同)
SERVER_NAME=wulongbo
## 源jar路径,mvn打包完成之后,target目录下的jar包名称,也可以选择war包,war包可以选择移动到tomcat的web-info下
JAR_NAME=springboot_son-0.0.1-SNAPSHOT
## 源jar路径
## demo项目目录
## target打包生成jar包的目录
JAR_PATH=/var/jenkins_home/workspace/wulongbo/target
## 打包完成之后把jar包移动到运行jar包的目录,work_deamon,work_deamon这个目录需要自己提前创建
JAR_WORK_PATH=/var/jenkins_home/workspace/wulongbo/target/

echo "查询进程id-->$SERVER_NAME"
PID=`ps -ef | grep "SERVER_NAME" | awk '{print $2}'` 
echo "得到进程id: $PID"
echo "结束进程"
for id in $PID
do
    kill -9 $id
done
echo "结束进程完成"

##复制jar包到执行目录
echo "复制jar包到执行目录:cp $JAR_PATH/$JAR_NAME.jar $JAR_WORK_PATH"
echo "复制jar包完成"
cd $JAR_WORK_PATH
## 修改文件权限
chmod 755 $JAR_NAME.jar
java -jar $JAR_NAME.jar
  • 保存
  • 重新构建

image.png

  • 点击控制台,看到项目启动成功

image.png

image.png
curl 127.0.0.1:8012 查看容器内是否运行
因为Jenkins 是通过容器部署,需要我们把端口号映射出来

  • 停掉容器
systemctl restart docker

image.png

  • 清空所有运行的容器
docker rm $(sudo docker ps -a -q)

image.png

  • 加入 jar 包端口 8012
docker run -d --name jenkins -p 8040:8080 -p 8012:8012 -p 50000:50000 -v /data/jenkins_home:/var/jenkins_home jenkins/jenkins:2.222.3-centos
  • 刷新Jenkins

image.png

  • 再次构建服务
  • 查看控制台输出

image.png

image.png

  • java -jar 属于 前台启动方式导致一直在启动中,控制台一直转圈

image.png

image.png

  • 修改为后台启动

java -jar $JAR_NAME.jar 替换为 BUILD_ID=dontKillMe nohup java -jar $JAR_NAME.jar &
image.png

  • 删除刚刚启动的服务,重新启动

image.png

image.png


isWulongbo
228 声望26 粉丝

在人生的头三十年,你培养习惯,后三十年,习惯铸就你