环境
CentOS+JDK7+MAVEN3.2+SVN/GIT
SVN安装
yum install -y subversion
一.下载并运行Jenkins
地址:http://jenkins-ci.org/
运行
1.放到Tomcat下运行,访问地址host:port/jenkins
2.或者通过命令 java -jar jenkins.war 运行,访问地址 host:port
启动后会在用户目录下创建 .jenkins 文件夹
基本配置
“系统管理→系统设置”配置JDK,MAVEN,SVN
二.安装Publish Over SSH插件
1.安装
在“系统管理→管理插件→可选插件→Artifact Uploaders→Publish Over SSH”,勾选Publish Over SSH插件,选择直接安装
2.配置
在“系统管理→系统设置→Publish Over SSH Plugin“,配置示例如下:
公共配置:
Passphrase:密码(key的密码,如果你设置了)
Path to key:key文件(私钥)的路径
Key:将私钥复制到这个框中
Disable exec:禁止运行命令
私有配置:
SSH Server Name:标识的名字(随便你取什么)
Hostname:需要连接ssh的主机名或ip地址(建议ip)
Username:用户名
Remote Directory:远程目录
Use password authentication, or use a different key:可以替换公共配置(选中展开的就是公共配置的东西,这样做扩展性很好)
私有配置的高级:
Port:端口(默认22)
Timeout (ms):超时时间(毫秒)默认即可
Disable exec:禁止运行命令
Test Configuration:测试连接
三. 构建一个maven项目
配置如下:先安装依赖,后通过SSH拷贝到文件夹下,执行脚本运行 注:丢弃旧的构建最好勾选上
说明
1.项目checkout地址为 : ~/.jenkins/jobs/{项目名称}/workspace ,这部分不用填写
2.Cron Expression语法,看我另一个帖子 http://sgq0085.iteye.com/blog/2202658
Pre Steps
可以在Pre Steps步骤中安装依赖,POM需要直接指向需要的POM文件,地址为项目目录相对地址,不需要“/”开头,比如
SSH Publishers配置说明:
Transfer Set Source files:需要上传的文件(注意:相对于工作区的路径。看后面的配置可以填写多个,默认用,分隔)
Remove prefix:移除目录(只能指定Transfer Set Source files中的目录)
Remote directory:远程目录(根据你的需求填写吧,因为我这儿是测试,所以偷懒没有填写。默认会继承系统配置)
Exec command:把你要执行的命令写在里面
四.执行脚本
publish.sh
#!/bin/bash #defined TOMCAT_HOME="/root/jenkins/save/apache-tomcat-7.0.61" TOMCAT_PORT=80 PROJECT=adp-web SAVE_DIR="/root/jenkins/save" #shutdown tomcat "$TOMCAT_HOME"/bin/shutdown.sh echo "tomcat shutdown" #publish project echo "$PROJECT publishing" rm -rf "$TOMCAT_HOME"/webapps/$PROJECT* cp "$SAVE_DIR"/$PROJECT.war "$TOMCAT_HOME"/webapps/$PROJECT.war #bak project BAK_DIR="$SAVE_DIR"/bak/$PROJECT/`date +%Y%m%d` mkdir -p "$BAK_DIR" cp "$TOMCAT_HOME"/webapps/$PROJECT.war "$BAK_DIR"/"$PROJECT"_`date +%H%M%S`.war #remove tmp rm -rf "$SAVE_DIR"/$PROJECT*.war #start tomcat "$TOMCAT_HOME"/bin/startup.sh echo "tomcat is starting,please try to access $PROJECT conslone url" 1
五.通过Execute shell执行tomcat被关闭的解决方法
加BUILD_ID,类似下列这样
BUILD_ID=pleaseDontKillMe /export/servers/tomcat/bin/startup.sh
六. 补充GIT
1.安装git
apt-get install git yum install git-core
2.测试git
新建一个文件夹执行 git clone http://xxxx.xxx.xxx/xxx/xxx
3.git clone 提示:fatal: Authentication failed for “someurl”
这个问题可能因为你访问的不是公开项目,需要输入密码,但也不一定,有时公开项目也会输入密码,你只能
git clone http://username:passwd@some.com/project-path 这样来访问,但是这样不方便,怎么能不输入密码呢?
可以在自己的home目录下创建.netrc文件,里面写上:
machine 目标服务器的域名
login 你用于访问服务器的用户名
password 你用于访问的密码
4.git clone https://xxxx 失败
首先设置 git config --global http.sslVerify false
设置后若总是提示:result=22, httpcode = 200
则将https改成git,先clone只读的仓库
然后进入仓库目录,修改目录下的.git/config中的url,将git改成https
这样修改后就能push了
5.jenkins安装git
安装git plugin, 通常情况下git plugin可以直接在jenkins的management plugin可以直接安装,但是由于我这边环境有防火墙看不到plugin的东西
所以只能直接在jenkins的官网上下载plugin安装
需要一并安装的plugin包括:
https://wiki.jenkins-ci.org/display/JENKINS/SCM+API+Plugin https://wiki.jenkins-ci.org/display/JENKINS/Icon+Shim+Plugin https://wiki.jenkins-ci.org/display/JENKINS/Credentials+Plugin https://wiki.jenkins-ci.org/display/JENKINS/Git+Client+Plugin https://wiki.jenkins-ci.org/display/JENKINS/Git+Plugin
按顺序安装 并每次重启
plugin插件在附件中提供下载
6.源码管理修改为git
相关推荐
jenkins简单使用1
ubantu系统中, 如何安装jenkins, 如何实现自动打包部署, 如何联合git的push操作触发自动打包部署
### Jenkins上手使用说明知识点 ...以上知识点涵盖了Jenkins的基本安装、配置、构建Job、远程任务执行、Pipeline的使用、证书配置等关键操作,以及一些高级特性的简单介绍,为初学者提供了一个全面的入门指南。
压缩包中的`jenkinsApi`文件可能包含一个简单的Java示例,展示了如何初始化Jenkins客户端、设置认证、触发Job构建等基本操作。通过分析这个示例,可以更好地理解上述知识点的实际应用。 在实际项目中,使用Java...
首先,Jenkins的安装过程操作简易,不需要复杂的配置即可进行基本使用。它可以在多种平台上安装,包括Windows、Linux、MacOS等。Jenkins对于新手来说非常友好,即使没有任何相关经验的人也能在短时间内学会基本操作...
Jenkins的使用并不止于简单的部署,它支持广泛的插件来扩展其功能,如集成Git仓库、执行单元测试、发布构建到生产环境等。在实际操作中,你需要确保Tomcat服务器配置正确,Jenkins的版本与你的系统环境兼容,并根据...
1. 持续集成和持续交付:作为可扩展的自动化服务器,Jenkins 可以用作简单的 CI 服务器,也可以用作任何项目的持续交付中心。 2. 简易安装:Jenkins 是一个独立的基于 Java 的自动化服务器,不需要复杂的安装过程。 ...
Jenkins是所有CI产品中安装和配置最简单的之一,它基于Web访问,用户界面友好、直观且灵活。Jenkins是基于Java开发的,但它的应用范围不限于Java项目,几乎可以用于构建任何类型的软件。另外,Jenkins插件大多是开源...
通过以上步骤,您可以快速地搭建起一个基础的Jenkins环境,并尝试构建简单的项目。随着对Jenkins的深入了解,您可以进一步探索更多高级功能,如流水线(Pipeline)、多分支项目等,以满足更复杂的持续集成/持续部署...
下面是一个简单的示例,展示了如何使用C#触发Jenkins构建: ```csharp using System; using System.Net.Http; using System.Threading.Tasks; using Newtonsoft.Json.Linq; public async Task TriggerBuild(string...
1. **邮件标题**: `${ENV,var="JOB_NAME"}-第${BUILD_NUMBER}次构建日志`,这里使用了Jenkins提供的变量`${ENV,var="JOB_NAME"}`来获取环境变量`JOB_NAME`的值,即构建任务的名字;`${BUILD_NUMBER}`表示构建序号。 ...
在Windows环境下,Jenkins的安装也非常简单,通常可以通过官方提供的Windows安装程序来实现。安装过程中同样需要确保JDK已正确安装,并配置好相应的环境变量。 #### Jenkins的基本功能介绍 Jenkins启动后的Web界面...
然而,在将Jenkins与GitLab结合使用时,需要解决的问题是如何将代码从GitLab仓库拉取到Jenkins中,而不需要使用密码。下面将介绍两种方法来实现无需密码拉取代码。 方法一:通过用户名和密码结合 在这种方法中,...
设置成功后,可以通过简单的命令来启动和停止Jenkins服务。 4. Jenkins启动和关闭:Jenkins的启动方式是使用Java的jar命令,Jenkins内置了jetty容器,因此不需要额外的Tomcat等web服务器。可以通过指定不同的端口来...
安装Jenkins非常简单,因为它是一个基于Java的Web应用。你只需要将下载的`jenkins.war`文件放置到运行Tomcat或其他兼容的Servlet容器的`webapps`目录下。然后启动Tomcat服务器,Jenkins就会自动解压并运行。通过访问...
其主要目标在于提供一个易于使用的软件平台,使得持续集成变得更加简单可行。Jenkins 的核心优势在于其强大的插件生态系统,能够支持多种构建工具、版本控制系统以及其他第三方服务。 #### Jenkins部署流程 部署 ...