jenkins 自动远程发布到服务器

jenkins 自动远程发布到服务器

1.安装jenkins

安装过程:自行百度

英文不好的,不要装最新版的jenkins。建议安装Jenkins ver. 2.138.4,此版本可以设置中文语言,设置如图

image.png

2.安装主要插件

系统管理 > 插件管理,在可选插件中,搜索插件


image.png
1)Publish Over SSH

Send build artifacts over SSH
用于上传发布构建之后的war、jar包等资源,然后执行服务器脚本命令,功能很强大

2)Dingding[钉钉] Plugin
image.png

安装钉钉通知的插件。用于构建完成之后的消息通知。

3.配置环境

插件安装完成之后,需要配置环境。

1)系统管理>系统设置
image.png
  • Hostname:主机地址(ip或者域名)
  • Port:端口号
  • Root Repository Path:连接之后的默认目录
  • User Name:用户名
  • Password/Passphrase:密码秘钥
2)系统管理>全局工具配置
配置maven信息:

设置setting文件


image.png

设置maven安装目录


image.png
配置JDK

配置jdk安装目录


image.png

4.创建job

1)创建一个Job,名为MyTestJob

任务名称可以自定义,选择构建【构建一个自由风格的软件项目】


image.png

2)构建设置

如果磁盘空间小,这里可以设置自动删除策略。如图设置,表示保留2天的构建,最多2个


image.png

3)源码管理

本地使用的SVN,所以以SVN为例。


image.png

Repository URL: SVN的资源地址,路径直接到项目路径【本文演示的也是maven项目】如:项目名称为myProject,那么svn地址就要写到myProject,https://192.168.1.XXX:XXX/svn/XXX/XXX/myProject
Credentials: 先添加个SVN账号,点add

image.png

ID设置一个唯一的,其他就是用户名密码。
设置完成之后,就可以下拉选择
image.png

其他的就默认

4)构建触发器

定时构建: 不管SVN或Git中数据有无变化,均执行定时化的构建任务 ;

轮询SCM: 只要SVN或Git中数据有更新,则执行构建任务;

构建语法说明:

格式为:* * * * (五个星);
第一个
表示分钟,取值0~59
第二个表示小时,取值0~23
第三个
表示一个月的第几天,取值1~31
第四个表示第几月,取值1~12
第五个
表示一周中的第几天,取值0~7,其中0和7代表的都是周日

使用举例

每隔10分钟构建一次:H/5 * * * *
每隔1小时构建一次: H H/1 * * *
每月30号构建一次: H H 30 * *

定时构建和轮询SCM使用互不冲突,可以需要根据项目情况配置。我这里测试环境使用【轮询 SCM】已经能满足需求。每五分钟检查一次svn更新,如有更新则进行构建。


image.png

5)构建

其实构建之前可以设置构建环境,可以根据项目需要去设置。
基于maven可以使用maven进行构建

image.png

Maven 版本: 选择之前配置的maven版本
目标: 设置maven构建语句【不用写mvn】
image.png

配置完maven信息之后,新增ssh配置:
image.png

上传服务器文件路径说明:

最终上传到服务器的文件路径为:
系统设置里的Remote Directory + 构建里的 Remote Directory + Source files
如图即为:A + C + B

image.png

Source files: 相对于workspace目录,其实也就相当于在myproject目录下,maven构建之后,会在该目录下生成target目录,所以此处可以填写target\XXX.war
Remove prefix: 移除Source files的前缀。填写target 如果删除target的话,最终上传的时候也会带着target目录
Remote Directory: 在系统设置里的Remote Directory 下,生成此处的Remote Directory目录
Exec command: 上传之后执行的命令行,可以在服务器制作sh脚本,比如停止tomcat,拷贝war包到tomcat,然后启动tomcat。
此处命令后期可以在补充上。

6)构建后操作

当然jenkins自动帮我们发布了,我们不可能时时刻刻都盯着jenkins控制台,我们需要它提醒我们,我们可以选择配置邮件提醒等等,为了方便,我们可以使用钉钉通知。

钉钉群设置

image.png

创建个团队钉钉群,在钉钉群设置里添加【群机器人】,点击添加
image.png

选择自定义,设置完头像和名称
image.png

之后会得到一个url
https://oapi.dingtalk.com/robot/send?access_token=XXXXXXXXXX
access_token参数下面设置需要使用

钉钉通知设置

新增构建后操作,选择订单通知。


image.png

jenkins URL: 输入当然jenkins的访问地址
钉钉access token:即为钉钉群机器人的url中的access_token参数
其他的就是选择钉钉机器人提醒的时机。添加完成之后,jenkins构建就会及时提醒团队成员。

你可能感兴趣的:(jenkins 自动远程发布到服务器)