jenkins+maven+docker+gitlab自动化构建部署

背景:docker搭建 jenkins,通过其自带git把源码拉取到jks(jenkins简称)workspace,进行build执行mvn打包编译,然后通过ssh远程链接到目标机器(上传打好jar/war到目标机器的挂载目录),执行指令把jar/war copy/mv到目标目录下执行docker restart name (其服务也是通过docker-create-java创建的实例 )。

为了更好的写这个教程,我逐步完成最终目标,将目标拆分成3个部分。
- 第一步:gitlab代码服务器,提交maven项目(见docker搭建gitlab博文)
- 第二部:docker安装jenkins,配置环境,拉取github工程,构建war/jar包
- 第三步:构建的war/jar包自动上传推送到远程服务器中
- 第四步:执行docker restart 指令启动服务

ps:不适用 宿主机上搭建jenkins服务,定时(或githook)的方式从github上拉取maven工程,构建jar/war包。使用docker构建image,推送到docker registry上。

- 第二部

搭建过程 网上尽有不再累述 简要:docker pull jenkins/jenkins:latest

docker run -itd --privileged --name="$1" --hostname="$1" -p "$2":8080   -p "$3":50000 --log-driver=json-file -v /alex/jenkins/"$1"/config/:/var/jenkins_home -v /alex/jenkins/"$1"/logs/:/var/jenkins_home/logs/tasks/ -v /alex/jenkins/"$1"/workspace/:/var/jenkins_home/workspace/ -v /alex/jenkins/maven/:/usr/local/maven -v /usr/local/jdk8:/usr/local/jdk8 jenkins/jenkins:latest

注意两个点

1:安装默认英文版:需中文版的把jks的workspace (hudson.model.UpdateCenter.xml)

2:安装提示默认offline是因为(default.json)connectionCheckUrl是Google.com ;(国内懂的吧)还能怎么样呢,当然是原谅它了。身为程序员,在程序里埋个个把bug实在是稀松平常的事情,毕竟是面向bug编程嘛。只要能及时发现并处理就ok;修改可以访问了国内就baidu.com

 - 第三步 注意: 这个插件是不在默认安装插件的范围内的,需要先手动安装下。

-----Publish Over SSH远程部署

1.在系统管理中配置需要远程部署的服务器

在项目中使用插件(构建中使用的话名为Send files or execute commands over SSH,构建后使用的话名为Send build artifacts over SSH)。

在这里插入图片描述

Name :选择需要的服务器
Source files: 需要上传的文件。支持通配符。需要特别注意的是,需要上传的文件必须位于当前的workspace中,否则会上传失败。
Remove prefix:移除指定前缀。例如我指定了移除test,这个文件会直接上传到/home/test/html/下,否则会上传到/home/test/html/test下。
Remote directory:远程目录。注意! 此目录是基于之前设置服务器时设置远程目录的,即这里的目录是位于服务器设置目录下的相对目录。
Exec command:需要执行的命令。这里不做太多说明。
 

2:maven配置

2全局配置

三:构建环境

Pre Steps:构建前的操作,可以增加执行shell,配置脚本echo "Pre Steps脚本启动成功",此内容会在构建控制台中打印出来
Build:Root POM配置pom.xml(要构建的工程必须是maven,有pom文件),Goals and options配置clean package(也就是mvn的构建命令)
Post Steps:构建完成后的操作,可以增加执行shell,配置脚本echo "Post Steps脚本启动成功${WORKSPACE}",${WORKSPACE}为jenkins的环境变量。上方的3个单选项分别代表构建成功后执行、构建成功或不稳定执行、总是执行
————————————————
-ending

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值