[CI]jenkins安装&插件管理&java-helloworld之旅
持续集成概述[*]没有持续集成时的情况
https://images2017.cnblogs.com/blog/806469/201711/806469-20171129193518573-28202222.png
持续集成最佳实战
https://images2017.cnblogs.com/blog/806469/201711/806469-20171129193544464-631577837.png
[*]维护一个单一的代码库
[*]使构建自动化
[*]执行测试是构建的一部分
[*]集成日志及历史记录
[*]使用统一的依赖包管理库
[*]每天至少集成一次
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插件
https://ws1.sinaimg.cn/large/9e792b8fgy1flz72zrb9jj20q00d7gou.jpg
默认的插件
https://ws1.sinaimg.cn/large/9e792b8fgy1flz73xi9o2j20zo0f0di0.jpg
https://images2017.cnblogs.com/blog/806469/201711/806469-20171130171257745-1686241341.png
常用的插件
https://ws1.sinaimg.cn/large/9e792b8fgy1flz746u17yj20tt0f6jsm.jpg
其次手动安装pipeline插件
https://ws1.sinaimg.cn/large/9e792b8fgy1flz72l6fdgj216b045mxh.jpg
更换插件镜像
https://ws1.sinaimg.cn/large/9e792b8fgy1flz76a1ykjj20lt0jodgu.jpg
全部镜像
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
https://ws1.sinaimg.cn/large/9e792b8fgy1flz6zqh3w4j20t50e3dgj.jpg
安装好jenkins后,直接开始新建项目:(默认你已安装pipline插件)
新建一个pipeline项目
https://ws1.sinaimg.cn/large/9e792b8fgy1flz77rg7yyj20fq06nwex.jpg
配置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'
}
https://ws1.sinaimg.cn/large/9e792b8fgy1flz78w94enj20fa09yq3d.jpg
构建
https://ws1.sinaimg.cn/large/9e792b8fgy1flz79v28txj20n10c9tac.jpg
构建完毕!!!
以下是以前整理的一些jenkins目录细节,个人觉得没必要细究了.
我们主要关注这些
[*]安装目录
[*]数据目录
[*]日志目录
[*]jobs目录
[*]插件目录
[*]数据目录 /var/jenkins_home
安装jenkins(物理机jar包方式)
选择lts版.
https://ws1.sinaimg.cn/large/9e792b8fgy1flwoq7zp15j20m90k8jtk.jpg
发现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个类,每次构建相当于一次类的实例化.
创建认证
http://i1.piimg.com/588926/7d219659e305ddbb.png
http://i1.piimg.com/588926/93d4febf8b0180e4.png
创建jobs
http://i1.piimg.com/588926/076aef42ee44aa61.png
http://i1.piimg.com/588926/076aef42ee44aa61.png
http://i4.buimg.com/588926/a91a92c4ab0ad0e8.png
查看创建成功的jobs
http://i1.piimg.com/588926/dd07b52431800943.png
立即构建
http://i1.piimg.com/588926/721d1635f430de65.png
http://i1.piimg.com/588926/63ef44d912124fa7.png
查看jenkins目录
jenkin启动后目录文件结构:
一般 /var/jenkins_home 或者/home/jenkins 或者 /root/.jenkins
http://i1.piimg.com/588926/576ebbe5b447e256.png
主要有jobs(存放jobs的配置以及每次构建结果) plugin workspace文件夹
http://i1.piimg.com/588926/1846705f842e1df7.png
进入jobs
http://i1.piimg.com/588926/2bd07e15926facdc.png
查看jobs的配置文件
http://i1.piimg.com/588926/61c77682e0c86fcc.png
查看plugin目录
每个插件1个文件1个目录
http://i1.piimg.com/588926/c7655df83c824d96.png
http://i1.piimg.com/588926/e75ca780cfa1b9cb.png
制作最简单的用于jenkins测试的基于mvn的war包:
http://www.cnblogs.com/iiiiher/p/7943097.html
https://github.com/lannyMa/trucks/tree/master
页:
[1]