Jenkins自动部署

Jenkins是一个用Java编写的开源的持续集成(CI)工具,可持续、自动地构建/测试软件项目,监控一些定时执行的任务。具有开源,支持多平台和插件扩展,安装简单,界面化管理等特点。

本篇文章介绍如何安装和使用jenkins部署git项目,部署分为三个步骤:

前提:jenkins已搭建完毕,搭建方式网上很多,这里不做阐述

第一步:jdk、maven配置

第二部:配置SSH免密登录

第三部:部署项目

一、Jdk、maven配置

(一)Jdk配置

系统管理-》全局工具配置,配置本地JDK的路径,去掉勾选自动安装。

(二)maven配置

系统管理-》全局工具配置,填写本地maven的路径。

二、配置 SSH免登陆

(一)生成公钥、私钥

输入ssh-keygen-t rsa命令,一直回车,一个矩形图形出现就说明成功,在~/.ssh/下会有私钥idrsa和公钥idrsa.pub。

root和其他用户都可以生成公钥、私钥,使用时注意用户的区别。

(二)关联应用服务器

使用以下命令即可把本机的公钥复制到应用服务器 的~/.ssh/下的authorized_keys文件

ssh-copy-id -i id_rsa.pub 192.168.0.1(应用服务器IP)

(三)测试免密登录

a. 非root账户可能不支持ssh公钥认证(看服务器是否有限制)

b. 传过来的公钥文件权限不够,可以给这个文件授权下 chmod 644 authorized_keys

c. 使用root账户执行ssh-copy-id -i ~/.ssh/idrsa.pub 这个指令的时候如果需要输入密码则要配置sshdconfig

vi /etc/ssh/sshd_config #内容 PermitRootLogin no 修改完后要重启sshd服务,service sshd restart

设置后,再次输入命令,如果免密登录成功说明SSH公钥认证成功。

(四)Git设置免密

Git登录后,点击头像->Settings,点击SSH Keys, 打开刚才生成的id_rsa.pub,把内容添加到key里,Title设置一个名称,点击Add key 完成。

三、配置项目

(一)新建项目

选择maven项目,输入名称testjob,点击确定。

(二)项目配置

1、General

描述:对此job的任务做简要描述。

丢弃旧的构建:勾选,选择是否备份被替换的旧包。我这里选择备份最近的10个。

参数化构建过程:勾选,可以选择不同的参数类型,设置参数化。

举例如下:

在必要的时候并发构建:

勾选:可多次点击并发执行多个任务

不勾选:一次执行执行一个任务,多个任务需要顺序排队

2、源码管理

本文选择的是git,输入仓库url,前面git已经设置免密,所以Credentials 可以不设置,输入分支名称即可。

3、构建触发器

以下选项根据需要进行自定义配置。

触发远程构建:设置令牌后,可以通过url直接调用此job,请求后浏览器不会有反应,后台收到请求开始构建。

例:http://192.168.0.1:8080/job/ testjob/build?token=testjob

其他工程构建后触发:输入其他job的名字testMvn,testMvn执行后,会自动拉起本job

定时构建:设置后,可根据自定义时间自动构建

0 12 * * *:每天中午12点定时构建一次

第一个*表示分钟,取值0~59

第二个*表示小时,取值0~23

第三个*表示一个月的第几天,取值1~31

第四个*表示第几月,取值1~12

第五个*表示一周中的第几天,取值0~7,其中0和7代表的都是周日

4、构建环境

(1)删除工作空间里之前build的内容

(2)输入的日志里增加时间显示

5、Pre Steps

构建前的操作,有则添加,无则略过

可以执行shell/bat命令

6、Build

Maven Version:如果设置了多个版本maven则需要选择,否则会没有此选项

Root POM:默认填写pom.xml

7、Post Steps

构建前的操作,三个选项,根据job执行情况再执行脚本,此文已tomcat为例。

(1)仅在构建成功时运行

(2)只有构建成功或不稳定时才运行

(3)不管生成结果如何运行

本文用到的方式时scp+虚拟终端直接操作应用服务器,还有其他方式,这里不再阐述。

下面是xxx.sh的内容 ,其中用到的ServerIP,前面已参数化:

四、构建项目

到此项目已配置完毕,可直接进行构建。

点击Build with Parameters进入到此页面。

ServerIP:可以输入任意需要需要部署的服务器(要做免密、xxx.sh要存在)

点击开始构建,执行完毕后,左下角会显示执行记录和状态,点击进去可查看日志。

作者:尹本伟

版权申明:本文为公众号原创,如需转载,请在公众号后台留言。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181029A1M3SL00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券