当前位置: 首页 > article >正文

LInux操作系统安装Jenkins

1、什么是Jenkins

Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件项目可以进行持续集成。

2、Jenkins的作用

  • 持续的软件版本发布/测试项目。

  • 监控外部调用执行的工作。(Jenkins有很多的插件,可以用于监控)

3、什么是CI/CD

CI/CD 是持续集成(Continuous Integration,CI)、持续交付(Continuous Delivery,CD)与持续部署(Continuous Deployment,CD)的简称,注意CD对应了两个名词。

CI/CD是实现敏捷开发和Devops理念的一种方法,具体而言,CI/CD 可让持续自动化和持续监控贯穿于应用的整个生命周期(从集成和测试,到交付和部署)。这些关联的事务通常被统称为CI/CD 管道(Pipeline),由开发(RD)、测试(QA)、运维(OP)团队以敏捷方式协同支持。

持续集成:重点是将开发者的工作集中到代码仓库,一般情况每天都会有更新,持续集成可以更快的进行集成,更快的得到响应。

持续部署:是一种更高程度的自动化,可以根据需求进行持续的自动的部署项目。

4、Jenkins的应用场景

适用于大型项目,且更新比较频繁的。微服务架构的项目多数都会用Jenkins,单体项目相对少很多。

5、Jenkins特性

  • 易于安装。有多种安装方式,可以在线安装,也可以下载安装包安装,也可以运行war包。

  • 配置简单。Jenkins提供web端的配置方式,安装成功后,所有的配置都可以在web端完成。

  • 集成了Email等工具,可以在集成或部署时通知工作人员。

  • 有丰富的插件库。处理已有的插件,也可以自己开发插件。

  • Jenkins支持分布式。

6、安装Jenkins

1、上传文件

我们采用安装包的方式安装。

2、安装Jenkins

rpm -ivh  jenkins-2.263-1.1.noarch.rpm

3、配置文件中修改启动用户为root

vim /etc/sysconfig/jenkins

4、启动jenkins

systemctl start jenkins 启动jenkins
systemctl status jenkins 查看jenkins状态

启动会报错

5、报错,检查配置文件java的配置

根据报错信息提示:执行命令 systemctl status jenkins

由此推断没找到java环境,根据提示修改Jenkins的配置文件

vim /etc/rc.d/init.d/jenkins

再次启动jenkins
systemctl start jenkins 
查看jenkins的状态
systemctl status jenkins 

6、启动前查看该目录是空的,启动后会生成相应的文件【用来检测前面的操作是否正确】

ll /var/lib/jenkins

【解决问题:】如果输入上面命令后,发现仍然没有这些文件,关闭虚拟机,重新在登录进来就可以了。

7、登录

访问首页http://虚拟机ip:8080/

#根据上面红色地址连接,查找对应的登录密码
cat /var/lib/jenkins/secrets/initialAdminPassword

8、跳过插件安装

9、修改密码

默认用户名是:admin

密码修改成123456

10、安装插件

1、查看已安装插件

【目前一个插件都没有!】

2、解压文件

#执行第一个命令:
tar -zxvf jenkins-plugins.tar.gz

#查看解压后一共有多少个文件:
ll plugins/ |wc -l

压缩包中一共有191个插件

3、拷贝插件

验证拷贝后共有191个插件。

#拷贝文件到/var/lib/jenkins/plugins/
cp -a plugins/* /var/lib/jenkins/plugins/

#查看该目录下一共有多少个文件:
ll /var/lib/jenkins/plugins/ |wc -l

4、重启Jenkins

/etc/init.d/jenkins restart

【刷新页面:再次进行登录!admin 123456】


http://www.kler.cn/a/320525.html

相关文章:

  • ASP.NET Core Webapi 返回数据的三种方式
  • 三维测量与建模笔记 - 点特征提取 - 4.3 Harris特征点
  • 智能指针原理、使用和实现——C++11新特性(三)
  • 解决Ubuntu18.04及以上版本高分辨率下导致字体过小问题
  • shell 100例
  • PostgreSQL高可用Patroni安装(超详细)
  • MFC-基础架构
  • 实验二十:ds1302时钟实验
  • 【MYSQL】聚合查询、分组查询、联合查询
  • CSS开发全攻略
  • 后端开发面试题7(附答案)
  • 概率论与数理统计复习笔记
  • 本地电脑基于nginx的https单向认证和双向认证(自制证书+nginx配置)保姆级
  • 一天认识一个硬件之鼠标
  • web前端(本地存储问题超过5MB不继续保存解决办法)
  • Leetcode 378. 有序矩阵中第 K 小的元素
  • TypeScript 设计模式之【建造者模式】
  • 基于python+spark的外卖餐饮数据分析系统设计与实现(含论文)-Spark毕业设计选题推荐
  • Ansible-template模块动态生成特定文件
  • Spring Boot 整合MyBatis-Plus 实现多层次树结构的异步加载功能
  • 【MATLAB源码-第176期】基于matlab的16QAM调制解调系统频偏估计及补偿算法仿真,对比补偿前后的星座图误码率。
  • 力扣(leetcode)每日一题 2306 公司命名
  • Redis数据持久化总结笔记
  • 中国蚁剑(antSword)安装使用
  • Vue.js与Flask/Django后端配合:构建高效Web应用
  • 解决【WVP服务+ZLMediaKit媒体服务】加入海康摄像头后,能发现设备,播放/点播失败,提示推流超时!