小知识:基于Docker+Jenkins实现自动化部署的方法

使用码云搭建git代码存储仓库

https://gitee.com/login

使用码云创建私有私有git仓库 将本地springboot项目上传到git仓库中

基于docker安装jenkins环境

1.使用docker 安装jenkins

?
1
docker run -p 8080:8080 -p 50000:50000 -v jenkins_data:/var/jenkins_home jenkinsci/blueocean

2.访问jenkins地址 8080

%小知识:基于Docker+Jenkins实现自动化部署的方法-猿站网-插图

注意:第一次启动的时候正在加载jenkins大概会等待3-10分钟。

3.解锁jenkins

%小知识:基于Docker+Jenkins实现自动化部署的方法-1猿站网-插图

%小知识:基于Docker+Jenkins实现自动化部署的方法-2猿站网-插图

?
1
2
3
docker exec -it 7f485bd95c3b /bin/bash 进入jenkins容器
cat /var/jenkins_home/secrets/initialadminpassword

%小知识:基于Docker+Jenkins实现自动化部署的方法-3猿站网-插图

大概需要等待3-10分钟

创建新的用户

%小知识:基于Docker+Jenkins实现自动化部署的方法-4猿站网-插图

%小知识:基于Docker+Jenkins实现自动化部署的方法-5猿站网-插图

jenkins全局工具配置

进入到jenkins容器中 echo $java_home 获取java环境安装地址

jdk环境安装

%小知识:基于Docker+Jenkins实现自动化部署的方法-6猿站网-插图

maven环境安装

%小知识:基于Docker+Jenkins实现自动化部署的方法-7猿站网-插图

安装jenkins对应maven插件

找到 “系统管理“ – “安装插件” ,点击 “可选插件”,找到如下maven插件的版本

插件名称 maven integration

%小知识:基于Docker+Jenkins实现自动化部署的方法-8猿站网-插图

%小知识:基于Docker+Jenkins实现自动化部署的方法-9猿站网-插图

jenkins实现springboot项目自动部署新建一个发布任务

%小知识:基于Docker+Jenkins实现自动化部署的方法-10猿站网-插图

配置任务git账号密码

%小知识:基于Docker+Jenkins实现自动化部署的方法-11猿站网-插图

3.项目打包

%小知识:基于Docker+Jenkins实现自动化部署的方法-12猿站网-插图

?
1
clean install

点击立即构建

%小知识:基于Docker+Jenkins实现自动化部署的方法-13猿站网-插图

第一次构建可能耗时比较长,因为需要下载一些相关依赖jar包

jenkins启动成功之后执行shll脚本

?
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
#!/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. 重启容器

?
1
systemctl restart docker

2. 清空未运行的容器

?
1
docker rm $(sudo docker ps -a -q)
?
1
docker run -p 8080:8080  -p 8081:8081  -p 50000:50000 -v jenkins_data:/var/jenkins_home jenkinsci/blueocean

到此这篇关于基于docker+jenkins实现自动化部署的文章就介绍到这了,更多相关docker+jenkins实现自动化部署内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://www.cnblogs.com/ming-blogs/p/10903408.html

声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:使用Nginx搭建高可用高并发的Wcf集群

2023-3-29 19:21:49

建站知识

小知识:在Linux上给用户赋予指定目录的读写权限

2023-3-29 19:27:18

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索