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

[经验分享] [CI]jenkins安装&插件管理&java-helloworld之旅

[复制链接]

尚未签到

发表于 2018-1-8 22:39:47 | 显示全部楼层 |阅读模式
持续集成概述


  • 没有持续集成时的情况  


  持续集成最佳实战
  



  • 维护一个单一的代码库
  • 使构建自动化
  • 执行测试是构建的一部分
  • 集成日志及历史记录
  • 使用统一的依赖包管理库
  • 每天至少集成一次
  jenkins实现持续集成、自动测试、持续部署的超级引擎,支持自定义工具集、多种交付通道。

jenkins rpm安装
  

yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel  
下载地址
  https://pkg.jenkins.io/redhat-stable/
  

  
RPM安装
  rpm –ivh jenkins-2.32.3-1.1.noarch.rpm
  service jenkins start
  ckconfig Jenkins on
  

/var/lib/jenkins 主目录  
/etc/init.d/jenkins 启动文件
  
/var/cache/Jenkins 程序文件
  
/var/log/Jenkins 日志文件
  

  

  
修改/etc/init.d/Jenkins
  
将用户修改为root,可以调用root工具
  
106行,113行
  
修改启动端口85行,$JENKINS_PORT
  
systemctl daemon-reload
  
service jenkins restart
  

  
工作目录设置
  
Maven项目配置
  
设置系统JDK ANT MAVEN
  
Jenkins Location
  
邮件通知
  

  
Configure Global Security
  

  调试模式启动:(这里要说的)
  

java -jar jenkins.jar  

  工作目录:
  

/root/.jenkins/workspace/    

  如构建java-helloword项目
  

/root/.jenkins/workspace/java-helloword/   


  • 所有stage里执行命令都是基于这个目录
  • 每次构建会将这个项目目录git pull拉代码覆盖到最新代码.
  • jenkins执行的所有命令都是基于这个目录进行的.
安装jenkins插件

  默认的插件
  

  

  常用的插件
  

  其次手动安装pipeline插件
  

  更换插件镜像
  

  
全部镜像
  
http://mirrors.jenkins-ci.org/status.html
  
更换镜像
  
http://updates.jenkins-ci.org/update-center.json
  
https://mirrors.tuna.tsinghua.edu.cn/
  
http://mirror.esuni.jp/jenkins/updates/update-center.json
  
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
  插件目录需要备份
  

解压备份plugin.tar.gz  mv plugins /var/lib/jenkins/
  chown -R jenkins.jenkins plugins/
  service jenkins restart
  

最简单的java-helloworld自动构建之旅-手动mvn打包
  mvn安装和阿里云源配置参考: https://github.com/lannyMa/java-helloword
  

cd /usr/local/src/  
git clone https://github.com/lannyMa/java-helloword.git
  
cd java-helloworld
  
mvn clean
  
mvn package
  
cd target
  
java -jar testweb-v1.0.jar
  

最简单的java-helloworld自动构建之旅-配置jenkins自动编译打包
  mvn安装和阿里云源配置参考: https://github.com/lannyMa/java-helloword

  
安装好jenkins后,直接开始新建项目:(默认你已安装pipline插件)
  新建一个pipeline项目
  

  配置pipeline
  

stage 'prepare'  
node{sh "mvn -v" }
  

  
node{
  git "https://github.com/lannyMa/java-helloword.git"
  state: 'clean'
  sh 'mvn clean'
  stage 'package'
  sh 'mvn package'
  stage 'test'
  sh 'java -jar target/testweb-v1.0.jar'
  
}
  


  构建
  

  
构建完毕!!!
  以下是以前整理的一些jenkins目录细节,个人觉得没必要细究了.
  我们主要关注这些


  • 安装目录
  • 数据目录
  • 日志目录
  • jobs目录
  • 插件目录
  • 数据目录 /var/jenkins_home
安装jenkins(物理机jar包方式)
  选择lts版.
  

  发现lts版的http://updates.jenkins-ci.org/update-center.json这个插件源可以更新插件,每周更新版的那个却没法更新,很蛋疼.

docker启动jenkins
  参考: https://github.com/jenkinsci/docker/blob/master/README.md
  But if you want to attach build slave servers through JNLP (Java Web Start): make sure you map the port: -p 50000:50000 - which will be used when you connect a slave agent.
  8080是webui
  
50000是jnlp协议slave来通讯的.
  

docker run -d -u root \  -p 8080:8080 \
  -v /etc/localtime:/etc/localtime:ro \
  --restart=always \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v $(which docker):/bin/docker \
  -v /var/jenkins_home:/var/jenkins_home \
  --name=jenkins \
  jenkins
  

  

  创建1个job相当于创建1个类,每次构建相当于一次类的实例化.

创建认证



创建jobs

  

  

  查看创建成功的jobs
  


立即构建

  


查看jenkins目录
  jenkin启动后目录文件结构:
  
一般 /var/jenkins_home 或者/home/jenkins 或者 /root/.jenkins
  

  主要有jobs(存放jobs的配置以及每次构建结果) plugin workspace文件夹
  

  进入jobs

  查看jobs的配置文件

  查看plugin目录
  
每个插件1个文件1个目录
  

  

  制作最简单的用于jenkins测试的基于mvn的war包:
  
http://www.cnblogs.com/iiiiher/p/7943097.html
  
https://github.com/lannyMa/trucks/tree/master

运维网声明 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-433075-1-1.html 上篇帖子: jenkins自动打包部署项目 下篇帖子: Jenkins介绍-安装-部署...
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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