最近在倒腾Kubernetes的一些东西,这次需要用到Jenkins来实现自动化构建.来讲一讲搭建的整个过程.

Jenkins是什么

Jenkins提供了软件开发的持续集成服务.它运行在Servlet容器中(例如Apache Tomcat).它支持软件配置管理(SCM)工具(包括AccuRev SCM、CVS、Subversion、Git、Perforce、Clearcase和RTC),可以执行基于Apache Ant和Apache Maven的项目,以及任意的Shell脚本和Windows批处理命令

CentOS7下Jenkins搭建过程

Jenkins需要jdk环境:【Linux】CentOS7.0下安装JDK环境

接下来我们开始准备安装Jenkins,几条命令即可(#后面为注释内容):

#下载Jenkins库
wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
#导入key
rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
#安装Jenkins
yum install -y jenkins
#启动Jenkins服务
systemctl start jenkins

到这里,CentOS下Jenkins搭建便是完成了.

此时我们可以通过ip:port的方式,访问到Jenkins,如下图所示



点击Continue之后,会出现下图:



然后根据自己的需求,进行安装即可.到此,CentOS下Jenkins搭建便是完成了.

可能遇到的问题
  • Starting jenkins (via systemctl): Job for jenkins.service failed because the control process exited with error code.
  • 运行命令:systemctl status jenkins.service  查看错误详细信息



    请注意我在图中标注出来的两个地方,第一个地方是Jenkins加载的路径,第二个地方是Jenkins的错误详细信息:Failed to start LSB: Jenkins Automation Server

    这是因为Jenkins 未加载到 java 环境的问题,直接修改 Jenkins 的启动文件,并在 candiddates 参数内追加 java 的环境变量即可

    Jenkins的启动文件,在图中第一个地方我已经做了标注,所以运行以下命令:

    vi /etc/rc.d/init.d/jenkins

    具体修改见下图:



    关于java环境变量这部分,因为每个人的配置不同,所以你需要根据自己的实际情况做修改.如果是按照我开篇给出的方法安装的jdk环境,可以直接套用.然后再做以下步骤即可(#后内容为注释内容):

    #重新启动Jenkins服务
    systemctl restart jenkins.service
    #查看Jenkins服务,可以看到服务已经起来了
    systemctl status jenkins.service
  • 在CentOS环境下,Jenkins已经安装好了,但是在外部访问不到.这可能是因为防火墙的问题.出于安全的考虑,我是不建议直接将防火墙关掉的.开启Jenkins需要的端口即可(以开启8080端口为例,具体可根据自己需求更改):
  • 开端口命令:firewall-cmd --zone=public --add-port=8080/tcp --permanent
    重启防火墙:systemctl restart firewalld.service
  • 因为Jenkins默认端口是8080,可能会导致端口冲突.修改Jenkins的默认端口即可:
  • vi /etc/sysconfig/jenkins
    在该配置文件中,可以看到JENKINS_PORT这一项,根据需求修改即可.

    [Jenkins]CentOS7下Jenkins搭建的更多相关文章

    1. Centos7 下Jenkins 安装

      前言:什么是Jenkins? Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. 一.下载 wg ...

    2. centos7下jenkins升级

      systemctl stop jenkins cd cd /usr/lib/jenkins/ mv jenkins.war jenkins.war.bac rz #上传下载好的最新jinkens.wa ...

    3. k8s v1.18.2 centos7 下环境搭建

      准备 服务器:3台机器--1台主.2台工作节点,可以使用virtualbox 搭建虚拟机 主机名 centos version ip docker version flannel version 主机 ...

    4. CentOS7下Nginx搭建反向代理,并使用redis保存session

      1.启动两个tomcat,端口分别为8080,8081 2.配置nginx,vim /usr/local/nginx/conf/nginx.conf 添加如下配置: 3.启动nginx或热加载 启动: ...

    5. centos7 下 nfs 搭建总结

      nfs一般用于生产环境磁盘空间不足导致数据无法写入,从而通过异机远程挂载磁盘方式解决问题. 一. rpm -qa | grep nfs-utils rpm -qa | grep rpcbind 二. ...

    6. Centos7 下nginx 搭建文件图片服务器

      现在服务器部署nginx yum install -y epel-release yum install nginx -y 安装完成之后 访问ip 由此可见nginx服务是可用的 修改nginx的配置 ...

    7. centos7下找不到iptables文件

      最近在centos7下,搭建ftp服务,按照步骤一步一步来,发现 etc/sysconfig/iptables这个文件并不存在,然后去找解决方案, 原文地址:http://blog.csdn.net/ ...

    8. CentOS7下Docker中构建Jenkins容器

      背景 在CentOS搭建Docker完成后,我们需要在Docker中搭建Jenkins用来实现工程自动部署. 安装前提 jdk已安装,安装目录如:usr/java/jdk1.8.0_161 maven ...

    9. mac下 jenkins 环境搭建

      这几天搞了一些持续集成的工作,在所难免的接触到了jenkins ,下边写一下jenkins 在 mac os 环境下的搭建和配置. 1.tomcat 下载 前往apache 官网下载所需版本的tomc ...

    随机推荐

    1. day-01(html)

      本文档并非个人所写,只是方便自己参考: 案例1-网站信息展示需求: 在页面展示一些文字信息,需要排版技术分析: html:超文本标签语言////////////////////html: 作用:展示 ...

    2. nginx配置模板问题404

      nginx配置模板问题 一.nginx主配置文件如下 cat /etc/nginx/nginx.conf user nginx; worker_processes ; #error_log logs/ ...

    3. CodeForces920E 链表强优化BFS

      http://codeforces.com/problemset/problem/920/E 题意:求一个图的补图的连通分量个数以及每个连通分量里的点个数 如果这不是一个补图,BFS或者并查集可过,但 ...

    4. 基于jieba,TfidfVectorizer,LogisticRegression进行搜狐新闻文本分类

      一.简介 此文是对利用jieba,word2vec,LR进行搜狐新闻文本分类的准确性的提升,数据集和分词过程一样,这里就不在叙述,读者可参考前面的处理过程 经过jieba分词,产生24000条分词结果 ...

    5. java8的Streams

      首先看一个问题:在这个task集合中一共有多少个OPEN状态的?计算出它们的points属性和.在Java 8之前,要解决这个问题,则需要使用foreach循环遍历task集合:但是在Java 8中可 ...

    6. Windows netstat 查看端口、进程占用 查看进程路径

      1.查看端口.进程占用 运行->进入cmd->netstat -ano 2.查看进程路径 运行->WMIC->process 3.查看进程PID和占用内存情况 运行->进 ...

    7. jQuery视频格式的验证

      $(document).on('change','#videofile',function() { var file = this.files[0]; if (!/video\/\w+/.test(f ...

    8. ava.io.InputStream & java.io.FileInputStream

      java.io.InputStream & java.io.FileInputStream java.io.InputStream,这个抽象类是表示字节输入流的超类,这个抽象类的共性的方法有: ...

    9. WEUI Picker不切换数据

      /*js部分,myPicker是设备号input的ID*/ $('#myPicker').change(function () { /*选择设备号后,根据当前设备号设置不同的摄像头选项,具体判断逻辑根 ...

    10. VS2017 15.6之后支持直接反编译了

      在 15.6 预览版 2 中,增加了导航到反编译源功能. 启用后,在任何引用的类型或成员上调用转到定义或查看定义时,将显示其通过 ILSpy 反编译使用重新构造方法主体的定义. 要打开此功能,请转到“ ...