Jenkins是一个用Java编写的开源的持续集成(CI)工具,可持续、自动地构建/测试软件项目,监控一些定时执行的任务。具有开源,支持多平台和插件扩展,安装简单,界面化管理等特点。
1.下载并解压Tomcat (windows)
Tomcat官方网站:
2.下载并安装适合自己电脑系统的 jenkins
Jenkins官方网站:
下载好安装包后,点击安装包,在选择安装目录时,把jenkins安装到步骤1解压的tomcat目录下的webapps文件夹中
3.配置Jenkins
Jenkins 安装完成会自动启动 TomCat , 并通过默认浏览器打开:
或者也可能通过自己手动启动Tomcat,然后打开浏览器访问:
启动Tomcat的方式一:启动 tomcat,bin目录下的startup.bat文件
4 .通过浏览器打开 后,如图所示:
根据提示,打开: D:\Java\apache-tomcat-9.0.0.M26\webapps\Jenkins\secrets\initialAdminPassword 文件查看密码。将密码填写到输入框中,点击 “Continue” 按钮。
-------------------------------------------
linux:
Jenkins安装
1.安装OpenJDK
2.yum安装Jenkins stable版本
安装好后,jenkins的主目录位于/var/lib/jenkins,这也是jenkins用户的家目录。
jenkins主程序:/usr/lib/jenkins/jenkins.war
jenkins配置文件:/etc/sysconfig/jenkins
jenkins启动脚本:/etc/init.d/jenkins
jenkins日志目录:/var/log/jenkins
3.启动Jenkins
4.访问Jenkins,进行初始化设置
http://jenkins_server_ip:8080
二、Jenkins插件安装演示
1.在线安装语言插件
进入Manage Jenkins->Manage Plugins->Available,找到"Locale plugin"并安装,安装过程中会自动处理好插件的依赖。
在线安装插件可能由于网络原因安装失败,记下安装失败的插件和安装顺序,然后使用下面的方法离线安装。
2.离线安装插件
访问网址https://mirrors.tuna.tsinghua.edu.cn/jenkins/plugins/,搜索上一步安装失败的那些插件,下载下来。
进入Manage Jenkins->Manage Plugins->Advanced,选择插件文件并上传。
注意:要按照依赖顺序一个一个安装插件。
安装好后重启Jenkins(可以通过访问http://jenkins_server_ip:8080/restart重启)。
3.设置语言为中文
进入Manage Jenkins->Configure System,在"Default Language"位置输入zh_CN,保存立即生效。
三、安装SVN插件
1)进入"系统管理"->"插件管理"->"可选插件",找到"Subversion Plug-in"并安装。
2)SVN插件安装好后,我们创建一个新项目。
在项目配置的"源码管理"部分,我们可以对svn仓库进行配置了。
四、安装SSH插件
1)进入"系统管理"->"插件管理"->"可选插件",安装"Publish Over SSH"插件。
2)配置SSH免密码登录到远程服务器
将公钥推送到远程主机:
3)进入"系统管理"->"系统设置",找到Publish over SSH配置段。
-
Jenkins SSH Key(插件的全局配置)
Passphrase:密码(key的密码,一般我们不会设置)
Path to key:key文件(私钥)的路径
Key:将私钥复制到这个框中(与Path to key二选一)
Disable exec:禁止远程运行命令
-
添加SSH远程主机
SSH Server Name:自定义远程主机的名字
Hostname:ssh远程连接的ip地址
Username:用户名
Remote Directory:远程目录
Use password authentication, or use a different key:选中展开就可以配置新的私钥,不使用全局配置。
Port:SSH端口
Timeout (ms):超时时间(毫秒)
Disable exec:禁止运行命令(只对当前配置的ssh主机生效)
Test Configuration:测试连接,连接成功会返回Success
五、项目配置
1.新建一个项目
新建一个项目,输入项目名称,选择“构建一个自由风格的软件项目”。
2.构建触发器
-
触发远程构建
远程构建URL:
JENKINS_URL/job/JOB_NAME/build?token=TOKEN_NAME
我们可以在URL末尾加上&cause=Cause+Text描述构建原因。
例如:
http://192.168.1.203:8080/job/testjob1/build?token=testjob1token
脚本调用方法:
curl -v -u 用户名:登录密码 远程构建URL
-
Build after other projects are built
指定的项目完成构建后,才触发此项目的构建。
-
Build periodically
按指定的时间频率对项目进行构建。
-
Poll SCM
按指定的时间频率检查源代码仓库的变化,如发现变化则执行构建。
3.构建环境
-
Send files or execute commands over SSH before the build starts
构建开始前通过ssh给远程主机发送文件或者执行命令。
-
Send files or execute commands over SSH after the build runs
构建结束后通过ssh给远程主机发送文件或者执行命令。
这两个选项是在安装了“Publish Over SSH”插件后出现的,比较实用。配置介绍:
Name:在系统设置里配置的SSH远程主机的名字
Source files:上传的文件或目录(相对于项目工作区的路径,非绝对路径。可以填写多个,默认用逗号分隔)
Remove prefix:移除Source files的目录前缀
Remote directory:远程主机的上传目录(如果目录不存在会自动创建)
Exec command:要远程执行的命令
Flatten files:只上传文件,不创建目录(除了远程目录)
4.构建步骤
-
Execute Windows batch command
执行Windows批处理脚本(Jenkins安装在Windows系统中)。
-
Execute shell
执行Linux shell脚本(Jenkins安装在Linux系统中)。
-
Invoke Ant
JenKins与Ant集成实现项目的自动化构建部署,适用于Ant作为构建工具的项目。
-
Invoke top-level Maven targets
JenKins与Maven集成实现项目的自动化构建部署,适用于Maven作为构建工具的项目。
-
Send files or execute commands over SSH
通过ssh给远程主机发送文件或者执行命令。“Publish Over SSH”插件的功能。
5.参数化构建
通过参数化构建功能,我们可以为构建程序传递参数,灵活控制构建流程。
在项目配置里点选“参数化构建过程”,然后选择“添加参数”,jenkins提供了多种参数类型:
举个例子,我们添加两个参数:
-
参数level是Choice类型,可选值1和2,默认值是1。
-
参数text是String类型,默认值是“hello world”。
参数设置好后,我们可以在构建脚本里引用这些变量。
Windows平台引用方法:%var_name%
Linux平台引用方法:${var_name}
配置完整个项目后,我们手动运行构建:
在项目面板的左侧选择“Build with Parameters”,先对参数值进行修改,然后点击“开始构建”。
参数化远程构建URL(通过访问url触发构建):
JENKINS_URL/job/JOB_NAME/buildWithParameters?token=TOKEN_NAME&PARM1=VALUE1&PARM2=VALUE2…
例如:
http://192.168.1.203:8080/job/testjob1/buildWithParameters?token=testjob1token&level=2&text=hello+world
脚本调用方法:
curl -v -u 用户名:登录密码 远程构建URL
Jenkins插件安装和基础设置
安装svn、用户管理等插件(离线安装模式) 插件下载地址http://updates.jenkins-ci.org/download/plugins/
1需要下载的插件注意:插件安装有依赖关系,如果安装失败,根据失败提醒安装想用的包即可 第一个安装mapdb-api.hpi