设为首页 收藏本站
查看: 1278|回复: 0

[经验分享] JENKINS基础使用

[复制链接]

尚未签到

发表于 2017-6-7 10:01:10 | 显示全部楼层 |阅读模式
JENKINS总结

  修改时间
  修改内容
  修改人
  2016.3.12
  创建
  刘永志
  2016.5.22
  添加tomcat+jenkins
  刘永志
  2016.6.14
  添加tomcat找不到ant解决方案
  刘永志
  个人理解持续集成:为解决程序代码提交质量低,提交内容导致原有系统的BUG,按时或按需自动编译版本,进行自动化测试。
  百度对持续集成的定义:持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件。
  为什么写这篇文章:笔者在学习jenkins的过程中遇到了很多坑,且学习过程中好多搜到的资料过于零散,导致学习进度缓慢,想通过这篇文章,能让大家在学习的过程中少走弯路。虽然我预计这篇文章是做不到的,但是能够帮助到几位也是好的,以此为望,大家共勉。
一、Jenkins安装

  系统&安装方式
  直接使用WAR文
  安装包安装
  将WAR文件放到WEB容器
  Windows系统
  难度:低
  难度:中
  难度:高
  Linux系统
  难度:低
  难度:中
  难度:高
  Mac系统
  难度:低
  难度:中
  难度:高
  笔者推荐直接使用WAR文件,越简单的东西越适合初学者。且笔者在使用安装包安装中,出现过一次无法获取插件列表的情况。
Windows下安装:

  系统版本
  JDK版本
  Jenkins版本
  Windows10
  JDK8
  Jenkins1.651

  • 安装JDK:(windows下jdk的安装及环境变量配置百度一下)

  • 下载安装最新版本Jenkins:
    登陆 http://jenkins-ci.org/ 下载windows版本
    下载的压缩包内含一个.msi程序,直接安装
    DSC0000.png


  • 访问Jenkins:直接访问Jenkins http://本机IP:8080 (8080为jenkins默认端口号)
    DSC0001.png

Linux Ubuntu下安装:

  系统版本
  JDK版本
  Jenkins版本
  Ubuntu 14.04LTS 桌面版
  Openjdk-7-jdk
  Jenkins1.651
Ubuntu安装包安装:


  • 安装open-JDK:  sudo apt-get install openjdk-7-jdk

  • 安装Jenkins:     wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -
        sudo sh -c 'echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list'
        sudo apt-get update -y
        sudo apt-get install jenkins -y

  • 安装位置:  安装目录:/var/lib/jenkins
    日志目录:/var/log/jenkins/jenkins.log

  • 启动停止服务:     sudo /etc/init.d/jenkins start
        sudo /etc/init.d/jenkins stop

  • 访问jenkins:  http://本机IP:8080/
直接使用WAR文件:

  • 安装open-JDK(同上文)

  • 下载war文件
    DSC0002.png




  • 将对应war文件传入linux服务器(以下简单介绍几种传入方式,仅仅提供思路以做百度谷歌之用)

    • 架设FTP服务器
    • Winscp工具传入
    • 虚拟机可用虚拟机增强工具拖入或启动共享文件夹
    • U盘等硬件接入


  • 使用war文件开启服务  Java -jar /home/jenkins.war(wan文件路径) --Port=8080(端口)


  • 访问jenkins  http://本机IP:8080/

  • 将服务加入开机启动      cd /etc/init.d     //切换目录
      vi jenkins.sh     //编写shell脚本
    插入java -jar /home/jenkins.war(wan文件路径) --Port=8080(端口)&         //后台运行
      chmod 755 jenkins.sh    //修改shell脚本权限
      update-rc.d test defaults 95(启动顺序编号)     //加入启动项
      update-rc.d -f jenkins.sh remove   //删除启动项(需在/etc/init.d目录下执行)


  • Jenkins的安装目录:  /root/.jenkins/

  • 访问jenkins:  http://本机IP:8080/jenkins/
TomCat+Jenkins:

  • 下载安装jdk(同上文)
  • 下载WAR文件(同上文)

  • 下载安装tomcat


    • 下载tomcat    http://tomcat.apache.org/download-80.cgi
    • 将tomcat安装包传入服务器

    • 解压安装包  tar -cvzf apache-tomcat-8.0.12.tar.gz

    • 复制解压文件到你想要的安装路径  cp -r apache-tomcat-8.0.12 /目标路径

    • 进入安装路径,以/opt/tomcat/为例  cd /opt/tomcat/

    • 编辑tomcat启动脚本,加入环境变量  vim ./bin/startup.sh
        加入一下内容,路径改为你自己的环境变量路径
        JAVA_HOME=/usr/lib/jvm/jdk1.8.0_31
        JRE_HOME=${JAVA_HOME}/jre
        PATH=$JAVA_HOME/bin:$PATH
        CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
        TOMCAT_HOME=/opt/apache-tomcat-8.0.17
        ps:需要放在exec "$PRGDIR"/"$EXECUTABLE" start "$@"这一行上边

    • 编辑catalina.sh文件,加入环境变量,否则jenkins会报找不到Ant错误  #See the license for the……
        JAVA_HOME=/usr/lib/jvm/jdk1.8.0_31
        Export JENKINS_HOME="/root/.jenkins"

  • 将WAR文件放入tomcat安装路径/webapps/目录下

  • 启动&关闭tomcat   ./bin/startup.sh
      ./bin/shutdown.sh

  • Jenkins的安装目录:  /root/.jenkins/
二、Jenkins配置及插件安装使用简介
  HTML Publisher Plugin 插件在新的Jenkins版本中会导致打开的网页中无法加载CSS以及无法点击按钮的情况,由于CSP导致,可在Jenkins控制台中执行:System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")以解决此问题。其他由于CSP原因导致的html插件也可用此方法解决。
DSC0003.png

插件安装:


  安装方式
  在线安装
  下载后安装
  优势缺陷
  优势:自动安装依赖
  缺陷:安装速度慢
  优势:速度快
  缺陷:不会自动安装依赖
    
    
在线安装:


  • 进入系统管理
    DSC0004.png


  • 进入插件管理
    DSC0005.png


  • 切换可选插件分页
    DSC0006.png


  • 选择插件,直接安装
    DSC0007.png




  • 若遇到可选插件为空的情况

    • 切换到高级界面
    DSC0008.png


    • 点击立即获取按钮
    DSC0009.png


    • 若报错,建议直接重新安装jenkins(查了一天解决办法,放弃了,直接重装好了)

离线安装:


  • 进入插件管理,高级分页
    DSC00010.png


  • 上传插件
    DSC00011.png

  • 上传成功后会自动安装
  • 若安装失败请去对应插件页面检查是否安装对应依赖
账户安全配置:
  PS:
如果用户权限配置错误导致无法修改,修改服务器jenkins安装目录下config.xml文件,重启jenkins服务即可。


  • 进入系统管理—Configure Global Security
    DSC00012.png


  • 选择Jenkins专用用户数据库,允许用户注册,保存
    DSC00013.png


  • 注册用户
    DSC00014.png

  • 再次进入Configure Global Security

  • 启动安全矩阵,添加用户,添加权限,保存
    DSC00015.png

三、Jenkins的环境变量说明


  • 环境变量列表:  -BUILD_NUMBER,唯一标识一次build,例如23;
       - BUILD_ID,基本上等同于BUILD_NUMBER,但是是字符串,例如2011-11-15_16-06-21;当前只有ID
       - JOB_NAME, job的名字,例如JavaoWorld;
       - BUILD_TAG,作用同BUILD_ID,BUILD_NUMBER,用来全局地唯一标识一此build,例如jenkins-JavaHelloWorld-23;
       - EXECUTOR_NUMBER, 例如0;
       - NODE_NAME,slave的名字,例如MyServer01;
       - NODE_LABELS,slave的label,标识slave的用处,例如JavaHelloWorldMyServer01;
       - JAVA_HOME, java的home目录,例如C:\Program Files (x86)\Java\jdk1.7.0_01;
       - WORKSPACE,job的当前工作目录,例如c:\jenkins\workspace\JavaHelloWorld;
       - HUDSON_URL = JENKINS_URL, jenkins的url,例如http://localhost:8000/;
       - BUILD_URL,build的url 例如http://localhost:8000/job/JavaHelloWorld/23/;
       - JOB_URL, job的url,例如http://localhost:8000/job/JavaHelloWorld/;
       - SVN_REVISION,svn 的revison, 例如4;


  • 需要特殊注意的是系统管理,系统设置,高级中3个变量的引用(尤其注意重装jenkins后一定要检查是否与之前Jenkins的一致,哪怕是同一个版本甚至于同一个WAR文件)
    DSC00016.png

四、Jenkins使用


  • 创建项目,输入项目名称,选择项目类型
    DSC00017.png


  • 根据项目情况输入项目信息
    DSC00018.png


  • 构建
    DSC00019.png


  • 查看构建结果(蓝点为成功,红点为失败,Console Output选项为查看构建的log)
    DSC00020.png

五、构建


  • 构建触发器
    DSC00021.png


    • 触发远程构建(脚本构建)
    • Build after other projects are built(在其他构建完成后构建本项目)
    • Build periodically(定期构建)

    • Poll SCM(检查代码库)


  • 构建脚本
    DSC00022.png

    DSC00023.png


    • Execute Windows batch command:添加Dos脚本构建步骤
    • Execute shell:添加shell构建步骤
    • Invoke Ant:添加Ant构建步骤
    • Invoke top—level Maven targets:添加Marven构建步骤


  • 构建后操作
    DSC00024.png


    • E-mail Notification 增加发送邮件配置
    • Publish Html report (HTML Publisher plugin插件),增加查看Html结果配置(绝对路径,相对路径以workspace开始)

六、Jenkins在跨平台使用注意事项

  • 路径:
    Jenkins路径格式:
    Windows服务器下也支持"/""\"并存模式,推荐使用"/",方便跨平台使用。
    PS:看资料是可以,未尝试

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-384633-1-1.html 上篇帖子: Jenkins在Linux平台上搭建环境,以及Jenkins安装权限问题 下篇帖子: Linux(centos6.5)下安装jenkins
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表