使用码云搭建Git代码存储仓库
- 使用码云创建私有私有git仓库
- 将本地springboot项目上传到git仓库中
基于Docker安装Jenkins环境
1.使用docker 安装jenkins
docker run -p 8080:8080 -p 50000:50000 -v jenkins_data:/var/jenkins_home jenkinsci/blueocean
2.访问jenkins地址 8080
![图片[1]-基于Docker+Jenkins实现自动化部署的方法_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/ea1fcf45549c.png)
注意:第一次启动的时候正在加载jenkins大概会等待3-10分钟。
3.解锁jenkins
![图片[2]-基于Docker+Jenkins实现自动化部署的方法_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/84a0984bd733.png)
![图片[3]-基于Docker+Jenkins实现自动化部署的方法_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/173b42825953.png)
docker exec -it 7f485bd95c3b /bin/bash 进入jenkins容器 cat /var/jenkins_home/secrets/initialAdminPassword
![图片[4]-基于Docker+Jenkins实现自动化部署的方法_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/727708da0641.png)
大概需要等待3-10分钟
创建新的用户
![图片[5]-基于Docker+Jenkins实现自动化部署的方法_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/61b54cf2d6f9.png)
![图片[6]-基于Docker+Jenkins实现自动化部署的方法_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/a6f60ea37c68.png)
Jenkins全局工具配置
进入到jenkins容器中 echo $JAVA_HOME 获取java环境安装地址
JDK环境安装
![图片[7]-基于Docker+Jenkins实现自动化部署的方法_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/5f16359b7819.png)
Maven环境安装
![图片[8]-基于Docker+Jenkins实现自动化部署的方法_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/8b194d11709a.png)
安装Jenkins对应Maven插件
找到 “系统管理“ – “安装插件” ,点击 “可选插件”,找到如下maven插件的版本
插件名称 Maven Integration
![图片[9]-基于Docker+Jenkins实现自动化部署的方法_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/ccd99b05efd0.png)
![图片[10]-基于Docker+Jenkins实现自动化部署的方法_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/4fec2894f873.png)
Jenkins实现Springboot项目自动部署新建一个发布任务
![图片[11]-基于Docker+Jenkins实现自动化部署的方法_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/efc442b51b11.png)
配置任务git账号密码
![图片[12]-基于Docker+Jenkins实现自动化部署的方法_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/238378e1f700.png)
3.项目打包
![图片[13]-基于Docker+Jenkins实现自动化部署的方法_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/d3e47f08a8e1.png)
clean install
点击立即构建
![图片[14]-基于Docker+Jenkins实现自动化部署的方法_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/84fb2ce91e5a.png)
第一次构建可能耗时比较长,因为需要下载一些相关依赖jar包
Jenkins启动成功之后执行shll脚本
#!/bin/bash
#服务名称
SERVER_NAME=springboot
# 源jar路径,mvn打包完成之后,target目录下的jar包名称,也可选择成为war包,war包可移动到Tomcat的webapps目录下运行,这里使用jar包,用java -jar 命令执行
JAR_NAME=springboot-0.0.1-SNAPSHOT
# 源jar路径
#/usr/local/jenkins_home/workspace--->jenkins 工作目录
#demo 项目目录
#target 打包生成jar包的目录
JAR_PATH=/var/jenkins_home/workspace/springboot/target
# 打包完成之后,把jar包移动到运行jar包的目录--->work_daemon,work_daemon这个目录需要自己提前创建
JAR_WORK_PATH=/var/jenkins_home/workspace/springboot/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
echo "killed $id"
done
echo "结束进程完成"
#复制jar包到执行目录
echo "复制jar包到执行目录:cp $JAR_PATH/$JAR_NAME.jar $JAR_WORK_PATH"
cp $JAR_PATH/$JAR_NAME.jar $JAR_WORK_PATH
echo "复制jar包完成"
cd $JAR_WORK_PATH
#修改文件权限
chmod 755 $JAR_NAME.jar
Nohub java -jar $JAR_NAME.jar
加nohub 指的是后台运行,或者使用nohub &
容器映射8081端口
1. 重启容器
systemctl restart docker
2. 清空未运行的容器
docker rm $(sudo docker ps -a -q)
docker run -p 8080:8080 -p 8081:8081 -p 50000:50000 -v jenkins_data:/var/jenkins_home jenkinsci/blueocean
到此这篇关于基于Docker+Jenkins实现自动化部署的文章就介绍到这了,更多相关Docker+Jenkins实现自动化部署内容请搜索安全小天地以前的文章或继续浏览下面的相关文章希望大家以后多多支持安全小天地!
© 版权声明
渗透云记的技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。
渗透云记拥有对此文章的修改、删除和解释权限,如转载或传播此文章,需保证文章的完整性,未经允许,禁止转载!
本文所提供的工具仅用于学习,禁止用于其他,请在24小时内删除工具文件!!!访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。详情见本站的“免责声明”如果有侵权之处请第一时间联系我们删除。敬请谅解!E-mail:admin@encenc.com
THE END
喜欢就支持一下吧
相关推荐















请登录后查看评论内容