【Java架构:持续交付】一篇文章搞掂:Jenkins
一、安装
1、使用yum本地安装
1.1、使用yum安装JDK
a、检查系统是否有安装open-jdk
- rpm -qa |grep java
- rpm -qa |grep jdk
- rpm -qa |grep gcj
如果没有输入信息表示没有安装。
如果安装可以使用rpm -qa | grep java | xargs rpm -e --nodeps 批量卸载所有带有Java的文件 这句命令的关键字是java
b、检索yum中包含java的列表
- yum list java*
c、检索1.8的列表
- yum list java-1.8*
d、安装1.8
安装1.8.0的所有文件:
- yum install java-1.8.0-openjdk* -y
或只安装部分
- yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel 安装JDK,如果没有java-1.8.0-openjdk-devel就没有javac命令
e、使用命令检查是否安装成功
java -version
1.2、使用yum安装jenkins
yum list jenkins* 此时查不出jenkins包
将jenkins库加入到yum库中
- sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
- sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
此时可以查到jenkins包了
- yum list jenkins*
查看历史版本
- yum list --showduplicate jenkins*
安装最新版本
- yum install -y jenkins
安装指定版本
- yum install jenkins 2.150.3-1.1
查看jenkins安装地址

- /usr/lib/jenkins/:jenkins安装目录,war包会放在这里。
- /etc/sysconfig/jenkins:jenkins配置文件,“端口”,“JENKINS_HOME”等都可以在这里配置。
- /var/lib/jenkins/:默认的JENKINS_HOME。
- /var/log/jenkins/jenkins.log:jenkins日志文件。
- vim /etc/sysconfig/jenkins
- 按I开始编辑
- ESC->:->wq->回车 保存
- q无修改退出
- q!不保存退出
- !强制退出
启动Jenkins
查看端口占用情况
- netstat -ntlp
创建为服务
- service jenkins start/stop/restart
- 安装成功后Jenkins将作为一个守护进程随系统启动
- 系统会创建一个“jenkins”用户来允许这个服务,如果改变服务所有者,同时需要修改/var/log/jenkins, /var/lib/jenkins, 和/var/cache/jenkins的所有者
- 启动的时候将从/etc/sysconfig/jenkins获取配置参数
- 默认情况下,Jenkins运行在8080端口,在浏览器中直接访问该端进行服务配置
- Jenkins的RPM仓库配置被加到/etc/yum.repos.d/jenkins.repo
- 查看服务启动情况:service --status-all
- 查看运行日志:tail /var/log/jenkins/jenkins.log -n 100
直接启动
- 使用这种方式,端口配置无效,需要手动给配置参数
- java -jar /usr/lib/jenkins/jenkins.war --ajp13Port=-1 --httpPort=8899
- ajp13Port:
- $ AJP_PORT运行在使用标准端口$ AJP_PORTjenkins监听AJP13协议。默认端口号为8009。要禁用(因为你使用的是HTTPS),使用端口-1。
2、使用Docker安装(暂略)
2、Jenkins的使用
2.1、初始化
初次进入需要输入密码,在提示的路径中可以获取到

安装插件
选择“Install suggested plugins”安装默认的插件,下面Jenkins就会自己去下载相关的插件进行安装。
安装失败也没有关系,会有一个重新安装的按钮,好像重装1次就行了,即使不行,可以进入系统后再安装。


创建用户

进入主界面

配置Jenkins


配置工具


2.2、创建项目
创建一个项目


配置代码SVN地址

创建Maven构建步骤


即可看到构建结果
实例:
在Jenkins中创建构造shell脚本执行项目时,运行docker语句,报错
错误信息:
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.38/containers/lt-spring-cloud_zuul_1/stop: dial unix /var/run/docker.sock: connect: permission denied
Build step 'Execute shell' marked build as failure
如下处理:
将jenkins用户加入docker组
重启Jenkins服务
sudo gpasswd -a jenkins docker
sudo service jenkins restart
自动安装的maven本地仓库地址:/var/lib/jenkins/.m2/repository
注意.m2是隐藏文件夹,需要ls -a才能看到
启动失败,设置了端口为1001,java -jar可以启动,但是service不能启动
查看日志/var/log/jenkins/jenkins.log
tail /var/log/jenkins/jenkins.log -n 100
发现jetty启动的时候,提示没有权限
原因是非root用户,不能使用1024以下的端口
最后改成2001就可以访问了
运行Shell报错:command not found
执行脚本,提示
docker-compose: command not found
原因是没有设置环境变量
1、控制台执行 echo $PATH
把输出的这句话复制
2、jenkins->系统管理->系统设置
勾选Environment variables,添加键值,键:PATH,值:刚才复制的那句话
OK了!
【Java架构:持续交付】一篇文章搞掂:Jenkins的更多相关文章
- 【已转移】【Java架构:系统架构理论】一篇文章搞掂:RESTful
一.定义 1.起源 来源:Roy Fielding的博士论文. 目的:理解和评估以网络为基础的应用软件的架构设计,得到一个功能强.性能好.适宜通信的架构. 定义:一种实现软件通信的架构风格.设计风格, ...
- Java 集合详解 | 一篇文章解决Java 三大集合
更好阅读体验:Java 集合详解 | 一篇文章搞定Java 三大集合 好看的皮囊像是一个个容器,有趣的灵魂像是容器里的数据.接下来讲解Java集合数据容器. 文章篇幅有点长,还请耐心阅读.如只是为了解 ...
- 【Java架构:持续交付】一篇文章搞掂:持续交付理论
一.持续集成.持续交付.DevOps概念,关系等 持续集成(Continuous integration/CI) 持续交付(Continuous delivery/CD) 持续部署() 持续 (Con ...
- N个任务掌握java系列之统计一篇文章中单词出现的次数
问题:统计一篇文章中单词出现的次数 思路: (1)将文章(一个字符串存储)按空格进行拆分(split)后,存储到一个字符串(单词)数组中. (2)定义一个Map,key是字符串类型,保存单词:valu ...
- 【已转移】【Java架构:基础技术】一篇文章搞掂:Spring
本文篇幅较长,建议合理利用右上角目录进行查看(如果没有目录请刷新). 本文是对<SPRING实战第4版>的总结,大家也可以去仔细研读该书 [------------------------ ...
- 【Java架构:基础技术】一篇文章搞掂:Spring Boot
本文篇幅较长,建议合理利用右上角目录进行查看(如果没有目录请刷新). 本文是对<Spring Boot 实战第4版>的总结,大家也可以去仔细研读该书 注意,书中使用的Spring Boot ...
- 【已转移】【Java架构:基础技术】一篇文章搞掂:Java 8
本文篇幅较长,建议合理利用右上角目录进行查看(如果没有目录请刷新). 一.Java的历史与演变 目的:为完全了解Java,需要理解Java的诞生原因.成型动力以及他继承的思想. 计算机语言的创新与发展 ...
- 【Java架构:进阶技术】——一篇文章搞掂:JVM调优
Sun官方定义的Java技术体系: Java程序设计语言 各种硬件平台上的Java虚拟机 Class文件格式 Java API类库 来自商业机构和开源社区的第三方Java类库 JDK(Java Dev ...
- 【Java架构:基础技术】一篇文章搞掂:MyBatis-Plus
前言 Mybatis:一个流行的半自动ORM框架. Mybatis-Plus:一个Mybatis的增强工具,在Mybatis的基础上只做增强不做改变,为简化开发.提高效率而生. 本文使用的版本:myb ...
随机推荐
- 如何根据字典值的大小,对字典中的项排序---Python数据结构与算法相关问题与解决技巧
实际案例: 某班英语成绩以字典形式存储为: { 'LiLei' : 90, 'Jim' : 88, 'Lucy': 92 } 如何根据成绩高低,计算学生排名 -- 根据分数,进行排名,并且把排名信息添 ...
- PHP开发环境搭建及开发工具
PHP服务器组件非常多有WampServer.XAMPP.AppServ.phpStudy.phpnow等. 菜鸟教程推荐: WampServer,这也是目前window平台上使用最广泛的,操作也非常 ...
- from、includes、indexOf
from.includes.indexOf:https://blog.csdn.net/j59580/article/details/53897630?utm_source=blogxgwz1 语法 ...
- 17、NumPy——副本和视图
副本是一个数据的完整的拷贝,如果我们对副本进行修改,它不会影响到原始数据,物理内存不在同一位置. 视图是数据的一个别称或引用,通过该别称或引用亦便可访问.操作原有数据,但原有数据不会产生拷贝.如果我们 ...
- wireshark自动化之tshark命令行
tshark是wireshark安装目录下命令行工具 使用tshark可以通过自动化方式调用wireshark tshark -a duration:30 抓包30秒-w cap.cap 保存为cap ...
- JS书目推荐(私教推荐)
下面几本书是私教推荐的,从入门到提高,从易到难,想找电子版的可以去下面这个网站找找,挺多书籍的 鸠摩搜书https://www.jiumodiary.com/ JavaScript编程精解 (第二版) ...
- elasticsearch 基础 —— Mapping参数boost、coerce、copy_to、doc_values、dynamic、
boost 在查询时,各个字段可以自动提升 - 更多地依赖于相关性得分,boost参数如下: PUT my_index { "mappings": { "_doc&quo ...
- Linux知识-不断更新
找到使用cpu最高的进程之使用cpu最高的线程的16进制号 shell命令行: ps -eo %cpu,pid | sort -n -k1 -r |head -n 1|awk '{print$2}'| ...
- vue,一路走来(16)--本地及手机调试
闲暇时间记录一下如何绑定域名,实现本地及手机调试的过程.我的是微信开发项目,很多功能及操作都是基于微信来开发的,理所当然的就用到微信开发者工具了. 1.首先打开目录C:\Windows\System3 ...
- Sass:字符串函数-To-upper-case()、To-lower-case()
1.To-upper-case() To-upper-case() 函数将字符串小写字母转换成大写字母.如: //SCSS .test { text: to-upper-case(aaaaa); te ...