众所周知,Jenkins是个功能强大且开源的应用程序,允许持续集成和持续交付项目,处理任何类型的构建或持续集成。
Jenkins可以持续、自动地构建/测试软件项目且监控软件开放流程,快速问题定位及处理,提示开放效率等。
一、部署:
1.1 安装方式有很多:如yum安装、下载war包等方式,具体我就详细写了,问下度娘即可。
有点要注意的是,当我们在ubuntu使用apt-get install方式安装Jenkins的时候,会自动创建jenkins用户,这是一个没有用户目录的账号,可以使用以下步修改权限问题:
1.从/etc/group文件中在nogroup中删除jenkins账号
2.将jenkins账号分别加入到root组中: gpasswd -a root jenkins
3.修改/etc/default/jenkins文件中
JENKINS_USER=root
JENKINS_GROUP=root
1.2 环境配置: 安装完成后,Jenkins的默认端口是8080,启动jenkins后,先进入全局工具配置中配置jdk,maven,如下图所示:
配置jdk
配置maven
1.3 插件安装:
在系统管理—管理插件—已安装中检查是否有“Git plugin”和“Publish Over SSH”两个插件,如果没有,则需点击“可选插件”,找到它并安装 安装好两个插件后,点击“系统管理”– “系统设置”-》Publish over SSH进行要自动部署到的服务信息的配置,可以配置多台要部署的服务,并可点击Test Configuration进行服务器连接测试,如图:
name:需要将程序发布到目标服务器的名称,可自定义
Hostname:填写目录服务器的IP地址
Username:使用那个用户进行发布,此处为进行密钥互信的用户 (注意:此用户要有服务操作权限)
Remote Directory:此出为发布到目标服务器的相对根路径,建议填写/,防止后续填写路径异常。
SSH服务信息配置
二、项目构建:
2.1 新建任务—》填入项目名称—》选择构建一个maven项目—》点击确定
2.2 源代码可以选择git或者svn,然后填写源码路径-》账户认证
源码拉取信息配置
2.3 构建操作后的配置:
name可以在上面SSH Server中点击选择。
source file:是相对jenkins的workspace的路径。
remove file:build之后相对路径,忽略这个路径,否则下载之后会带上这个路径。
remote directory: 远程服务器要保存的文件目录。
Exec command : 这里直接写 bash 脚本名称 xx.sh 这里也是远程服务器的脚本。
构建操作配置
三、 项目的构建运行。
项目构建过程输出
至此,咱们算是完成了jenkins的构建及自动部署,本人在此过程中遇到的坑点主要有ssh远程登录用户没有操作文件的权限,陷入此坑一段时间,故值得注意。