为了账号安全,请及时绑定邮箱和手机立即绑定

linux环境下使用docker:jenkins对spring boot工程进行部署

标签:
Docker

获得jenkins 镜像

搜索jenkins相关镜像
docker search jenkins

webp

image.png


可以看到官方提供的镜像有OFFICAIAL标识
通常也可以到docker store搜到所需镜像的使用说明 我是链接
下载链接
docker pull jenkins


启动镜像

docker run -d -p 8080:8080 -p 50000:50000 -v /jenkins:/var/jenkins_home jenkins
-d的意思是后台运行
-v  +  本地路径:容器路径 :示例为将容器的/var/jenkins_home路径挂载到本地/jenkins 这么做的原因是/var/jenkins_home 为jenkins的运行文件目录,保存运行相关数据,如果不挂载到本地,当前镜像进程结束后不属于镜像的文件就会丢失。可以理解为镜像本身是不变的,每次运行都是从头开始。

登录并初始化

浏览器通过地址:8080端口访问
提示输入秘钥

webp

image.png


由于是后台启动镜像,日志没有输出到终端内,可以从启动日志中查询秘钥:
1:查询当前运行镜像的ID
查询状态命令:docker ps


webp

image.png

2:查询日志命令
docker logs -f -t --since="2017-05-31" ${id}
根据上一步查询到的ID:输入命令
docker logs -f -t --since="2017-05-31" 2833f00d6755
可以秘钥

webp

image.png


填入秘钥后提供初始化选项,我选择install suggested plugin


webp

image.png


接着会进行一系列安装,完毕会要求你填写管理员账户信息


webp

image.png


填写后即可启动:

webp

image.png


webp

image.png

安装全局工具

webp

image.png


webp

image.png

JDK

webp

image.png

git


webp

image.png


maven


webp

image.png

点击save保存变更

安装maven项目插件

webp

image.png


webp

image.png

webp

image.png

安装通过SSH发布插件

用于打包结束后把jar包远程发布到运行服务器用(注:这只是运行应用的一种办法)
在插件管理中安装该插件:


webp

image.png

在系统设置里配置远程服务器


webp

image.png


配置远程连接属性:
name:后续指定连接服务器
hostname:远程服务器ip
username:用户名
passphrase:密码


webp

image.png


配置完后记得保存。

创建一个maven 项目

webp

image.png

webp

image.png

配置代码来源:

示例选择git
首先填写用户名密码


webp

image.png


webp

image.png


然后填写url


webp

image.png

构建配置

webp

image.png

运行工程jar包

这里使用的通过SSH方式连接一个服务器,然后运行一个脚本 :


webp

image.png


脚本很简单:大致为查询已经运行的服务进程号,如有则删除,然后运行打包出来的这个jar包。spring boot集成了web容器,所以可以直接通过jar命令启动

kill -9 `ps aux | grep com.progen.Application | grep -v grep | awk '{print $2}'`
cp /dev/null nohup.out
nohup /jenkins/tools/hudson.model.JDK/bin/java -jar /jenkins/workspace/test/target/progen-0.0.1.jar com.progen.Application &exit 0

其实是本地运行,就“偷懒”使用jenkin安装的那个( /jenkins/tools/hudson.model.JDK/bin/java),而/jenkins/workspace/test/target/为打包的路径,所以在source files 和Remote directory没有配置,既没有吧本地的jar包传输到远程目录。


webp

image.png


仅配置运行脚本


webp

image.png

这里运行的时候需要加上nohup ,不然运行结束后jenkins没有判断为成功结束,构建结果会显示为超时而不是成功。

webp

image.png



作者:yobanana
链接:https://www.jianshu.com/p/3e0e6d0282cf


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
JAVA开发工程师
手记
粉丝
205
获赞与收藏
1007

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消