[CI]jenkins安装&插件管理&java-helloworld之旅
持续集成概述
- 没有持续集成时的情况

持续集成最佳实战

- 维护一个单一的代码库
- 使构建自动化
- 执行测试是构建的一部分
- 集成日志及历史记录
- 使用统一的依赖包管理库
- 每天至少集成一次
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
- 指定参数启动
/usr/local/jdk_8u25/bin/java -Dhudson.model.DownloadService.noSignatureCheck=true -Djava.awt.headless=true -DJENKINS_HOME=/log/data/jenkins -jar /log/jenkins_war/jenkins.war --logfile=/var/log/jenkins/jenkins.log --httpPort=8080 --httpListenAddress=192.168.10.1 --ajp13Port=-1 --debug=5 --handlerCountMax=100 --handlerCountMaxIdle=20
工作目录:
/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
更新: 如果安装不上插件(我发现最新的war lts包) 可以先java -jar jenkins.war 然后停下

改成
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
- 立即构建
- 查看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
[CI]jenkins安装&插件管理&java-helloworld之旅的更多相关文章
- jenkins 安装插件失败
大家在使用jenkins安装插件的时候经常遇到一下问题,就是插件由于网络或者墙的原因无法直接下载,出现下面截图的问题,处理办法有两种 第一种:更换源的问题jenkins->系统管理->管理 ...
- 真正加速Jenkins安装插件速度
本文主旨 看到好多加速Jenkins安装插件速度的文章, 大多数教程中都是在插件配置里使用下边的url来替换原有的https://mirrors.tuna.tsinghua.edu.cn/jenkin ...
- [ci] jenkins kubernetes插件配置(容器模式)-通过jnlp
有个小伙用sh结合jenkins搞的k8s cicd还不错 jenkins kubernetes插件 首先插件管理,搜索kubernetes plugin安装 配置kubernetes云 配置项目 执 ...
- Jenkins安装插件问题
最近在电脑尝试安装Jenkins软件 安装插件的时候 一直报错 没有推荐插件提示一直报错 at java.lang.Thread.run(Unknown Source) Caused by: java ...
- jmeter-----如何安装插件管理?
1.下载插件管理jar文件,http://www.jmeter-plugins.org/wiki/PluginsManager/ 2. 拷贝这jar文件到 \lib\ext文件夹里 3. 重新打开JM ...
- Jenkins的插件管理(安装和更新插件)
使用Jenkins的编译部署项目需要依赖各种插件 下面安装Jenkins的各种插件: 1.登录Jenkins进入以下界面: 2.点击 系统管理 : 3.点击 管理插件 : 4.点击 可选插件 选择你需 ...
- android141 360 安装软件管理java代码
AppManagerActivity package com.itheima52.mobilesafe.activity; import android.app.Activity; import an ...
- notepad++下载32位,安装插件管理
下载32位地址: https://notepad-plus-plus.org/download/v7.6.4.html 下载插件: 链接: https://pan.baidu.com/s/1tRSo4 ...
- jenkins安装插件一直不动
刷新界面即可,查看已安装的插件即可,这个时候已经安装完了,不用重启,直接使用插件即可
随机推荐
- Django模板语言的复用
一.include标签 由于在项目中,往往会出现多个页面拥有一个或几个相同的页面版块,或是一个页面多个页面版块是相同的,基于这个问题,我们可以采用模板语言复用include标签来帮我们解决,这样就避免 ...
- IE8 兼容性总结
rgba 颜色格式 IE8 不支持 rgba(0, 0, 0, .5) 这种颜色格式. 解决方案:可以利用一张半透明的 png 图片来兼容 IE8. flexbox 根据 caniuse 给出的数据, ...
- 4535 ACM 礼尚往来 数学排列组合
题目:http://acm.hdu.edu.cn/showproblem.php?pid=4535 题意:每个礼物都不相同的组合个数 数学规律: 将每个女友排序为1···n,对应的女友送男友的礼物排序 ...
- Java发邮件基础篇
1. 电子邮件协议 电子邮件的在网络中传输和网页一样需要遵从特定的协议,常用的电子邮件协议包括 SMTP,POP3,IMAP.其中邮件的创建和发送只需要用到 SMTP协议,所以本文也只会涉及到SMTP ...
- Python2.*与Python3.*共存问题
安装Python 2.7后,本来在3.4下能正常使用的脚本无法运行.网上有的方法是把两个版本的主程序分别改名为python2和python3,人眼判断脚本,手输命令行执行脚本.像我这样喜欢双击.拖拽的 ...
- [三边定位] C# 演示程序
计划用CC2530做定位,网上找了一些求圆交点的程序, 修改成3个圆求交点的质心,感觉算法还行. 粗略写了一下程序,结果还行. 现在只能手动输入3个圆的信息. 后面需要再优化. 全部未优化的程序: u ...
- Conscription [POJ3723] [最小生成树]
Description: Windy有一个国家,他想建立一个军队来保护他的国家. 他召集了N个女孩和M男孩,想把他们雇佣成为他的士兵. 要无偿雇佣士兵,必须支付10000元. 女孩和男孩之间有一些关系 ...
- Source map error
前端访问接口时火狐浏览器控制台出现了这个问题, source map文件是js文件压缩后,文件的变量名替换对应.变量所在位置等元信息数据文件,一般这种文件和min.js主文件放在同一个目录下. 比如压 ...
- 用单进程、多线程并发、多线程分别实现爬一个或多个网站的所有链接,用浏览器打开所有链接并保存截图 python
#coding=utf-8import requestsimport re,os,time,ConfigParserfrom selenium import webdriverfrom multipr ...
- bzoj 1005
prufer序列 性质: 1.一棵n个结点的树可表示为长度 n-2 的prufer序列 2.每个结点出现在prufer序列中的次数==该结点的度 -1 公式推出来了,大数模板没有除法..等开学了Jav ...