最近在倒腾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. 配置taBar所遇见的问题(踩坑之路)

      目前效果图: 问题:我遇见一个问题,点击每周关注的时候,他应该跳转到哪一个页面.在没有设置taBar还是可以跳转的. 解决方法是: 修改 open-type='navigate'为switchTab( ...

    2. 列举一些 MacBook Pro 必需的外设和应用程序推荐

      来源:知乎 文章收录于:风云社区SCOEE,提供上千款mac软件下载 基于从事Apps设计或开发者,使用 MacBook Pro,以下罗列一些必需的外设和应用程序推荐. Retina 256GB SS ...

    3. u-boot(五)内核启动

      目录 u-boot(五)内核启动 概述 分区空间 内核文件格式 内核复制跳转 内核启动 机器ID 启动参数 (起始tag)setup_start_tag 内存设置 根文件系统,启动程序,串口设备 (结 ...

    4. 《老梁四大名著情商课》笔记-学学TA,你就是聚会的万人迷

      <老梁四大名著情商课>笔记-学学TA,你就是聚会的万人迷 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 现在社会学家有一个统计,说中国处在单身状态大概有2个亿.这些人中 ...

    5. hadoop mapreduce 基础实例一记词

      mapreduce实现一个简单的单词计数的功能. 一,准备工作:eclipse 安装hadoop 插件: 下载相关版本的hadoop-eclipse-plugin-2.2.0.jar到eclipse/ ...

    6. DotNet 资源大全中文版

      https://blog.csdn.net/fhzh520/article/details/52637545 目录 算法与数据结构(Algorithms and Data structures) 应用 ...

    7. Emacs 快速指南(中文翻译)

        Emacs 快速指南 目录 1. 小结(SUMMARY) 2. 基本的光标控制(BASIC CURSOR CONTROL) 3. 如果 EMACS 失去响应(IF EMACS STOPS RESP ...

    8. 阅读:ECMAScript 6 入门(1)

      参考 ECMAScript 6 入门 ES6新特性概览 ES6 全套教程 ECMAScript6 (原著:阮一峰) JavaScript 教程 重新介绍 JavaScript(JS 教程) 前言 学了 ...

    9. HDU 3371(城市联通 最小生成树-Kruskal)

      题意是求将所有点联通所花费的最小金额,如不能完全联通,输出 -1 直接Kruskal,本题带来的一点教训是 rank 是algorithm头文件里的,直接做变量名会导致编译错误.没查到 rank 的具 ...

    10. Docker 从入门到放弃(四)Docker+Jenkins_自动化持续集成

      Windows 查看密码 $ cat /var/jenkins_home/secrets/initialAdminPassword 14e14c414f41481aa5955753d3f31f9f 自 ...