Jenkins2.33初学,安装,配置,搭建job

##1.安装 虽然想直接安装到centos上,但考虑学习配置,就先从windows开始。登录Jenkins官方网站下载最新的版本。选择版本的时候下意识的就打开下拉箭头选择了windows。这是个美丽的错误,应该选择war的。java

一路安装结束后,启动8080发现已经ok了,然而我并不想要占用8080端口,因而寻找配置端口的地方。百度出来的大多数的Jenkins博客也都是简单介绍,并且可能是用war来启动的,使用war启动能够设置端口:java -jar jenkins.war --httpPort=$HTTP_PORT. 而后再安装为windows服务。而我下载的msi一步到位了。又去百度了,没能找到合适的。本身去翻安装好的路径下的配置文件'D:\Program Files (x86)\Jenkins\jenkins.xml'。果真在这里:git

<service>
  <id>Jenkins</id>
  <name>Jenkins</name>
  <description>This service runs Jenkins continuous integration system.</description>
  <env name="JENKINS_HOME" value="%BASE%"/>
  <!--
    if you'd like to run Jenkins with a specific version of Java, specify a full path to java.exe.
    The following value assumes that you have java in your PATH.
  -->
  <executable>%BASE%\jre\bin\java</executable>
  <arguments>-Xrs -Xmx256m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "%BASE%\jenkins.war" --httpPort=8070 --webroot="%BASE%\war"</arguments>
  <!--
    interactive flag causes the empty black Java window to be displayed.
    I'm still debugging this.
  <interactive />
  -->
  <logmode>rotate</logmode>

  <onfailure action="restart" />
</service>

第一次修改后重启windows服务:'services.msc'->重启。 然而并无像想一想中的那样能够直接访问8070了,由于发现service一启动就关闭了。想起刚开始在Jenkins页面的全局设置了修改了端口,因而改回8080,然而启动登陆,进入全局设置:github

修改为8070以后,关闭服务,从新修改配置文件8070,启动服务。如此,Jenkins安装完毕。 浏览器访问localhost:8080就能够了。web

##2.构建第一个job 这里先完整的记录一个简单的job历程,后面补充踩过的坑。spring

###2.1构建一个GitHub源码库的job 能够直接新建开始第一个job,然而结果倒是失败,缘由是一些环境尚未配置好。因此第一步要作的是配置环境。 点击系统管理>>系统设置windows

####1. 添加home环境变量 这个是血泪铸成的坑。Windows上的Jenkins默认的home并非咱们当前的用户,因此后面若是有用到基于home路径的配置则会通通失败,好比.ssh。 勾选Environment variables,添加home:centos

####2.设置maven全局配置文件 点击系统管理>> Global Tool Configuration>> 因为国内访问maven镜像库比较慢,所以大多设置为国内的镜像好比阿里云,或者本身搭建的。浏览器

####3.设置jdk ssh

####4.设置git maven

####5.设置maven和gradle

####6.开始建立job 点击新建,输入项目名称,好比demo. 勾选github project, 输入project url

####7. 源码管理 这里是重点,我被卡了几个小时。就是由于前文提到的,Jenkins中git不识别key。就会报错return status code 128.因此第一步的设置环境变量必定要作。其次是github的配置。在系统配置里有github的配置,这里主要配置一个github的token,方便Jenkins与github集成,最终能够在master的branch下看到一个点,连接指向Jenkins最新的build。这里先不谈集成的问题。 设置成功后不会报错了。点击add,添加credentials。就是github的用户名和密码。若是是公开项目则不用。

####8.构建触发器 这里能够忽略,之后添加pipeline的时候设置构建逻辑。

####9.构建 这里是项目构建逻辑。即各类执行脚本。选择合适的执行脚原本执行代码。这里测试调用maven直接run项目,固然也能够mvn install打成war包后启动Tomcat。

####10.运行测试 点击保存,而后点击当即构建。 点击进入

点击Console Output 能够看到build的结果:

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.966 s
[INFO] Finished at: 2016-11-23T22:39:02+08:00
[INFO] Final Memory: 16M/225M
[INFO] ------------------------------------------------------------------------
Finished: SUCCESS

同时,在github也能够看到master分支build的详情,点击就会跳转到此次build:http://localhost:8070/job/demo/23/

####11.遇到过的问题

returned status code 128:
stdout: 
stderr: Permission denied (publickey).
fatal: Could not read from remote repository.

解决:设置home位置

Failed to connect to repository : Command "D:\Program Files\Git\Git\bin\git.exe ls-remote -h git@github.com:winsnow/spring-boot-demo.git HEAD" returned status code 128:
stdout: 
stderr: Permission denied (publickey). 
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

解决:设置home位置

###构建一个SVN源码库的job 同上,只不过源码管理选择svn,而且输入帐号密码。

###参考

相关文章
相关标签/搜索