如何在Linux(CentOS7)环境搭建 Jenkins 服务器环境
最近,我自己要亲手搭建一套完整的企业级 CI/CD 环境,这个环节里面涉及了很多内容,没有办法把这么多的内容都放在一篇文章里,所以 Jenkins 的安装和Java 的 JDK 安装我就是分了两篇文章来写的。而且这套环境中也包含 Docker 容器,涉及的东西不少,有些东西,自己也是第一次遇到,所以就会遇到很多坑。说起来,安装Jenkins服务器环境,我也是大费周章。本来开始打算通过 Docker 安装的,但是我在拉取 Jenkins 镜像的时候,总是太慢,半天的时间都拉取不下来,可能有人会说,你换成国内的镜像啊,我换了,刚开始很快,越到后面越慢,我也做了很多尝试,但是,都没解决,只能使用 Yum 安装了。
一、Jenkins 简介

Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。
Jenkins 功能包括:
二、Jenkins 安装
废话不多说,现在我们就开始安装 Jenkins 服务器的环境。
1、检查环境是否安装了 Java 的 JDK,因为 Jenkins 是用Java 语言写的,要想安装 Jenkins 之前,必须安装 JDK。
命令:# java -version

上图说明 Jenkins 的运行环境已经安装成功。
2、yum 安装 Jenkins。
这里推荐使用yum方式安装Jenkins,最简单方便。yum的repos中默认是没有Jenkins的,需要先将Jenkins存储库添加到yum repos。
(1)、在执行wget命令之前,必须确保该命令已经安装,如果没有安装,请安装。
命令:# yum install -y wget

(2)、执行 :# wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo

(3)、执行:# rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key

(4)、安装 Jenkins。
命令:# yum install jenkins

随后就可以看到系统开始自动下载安装。出现提示是否下载的时候输入y并按回车。耐心等待安装完成。

(5)、修改配置。
现在Jenkins已经安装好了,不过启动之前最好稍微修改一下配置。默认情况是Jenkins是使用Jenkins用户启动的,但这个用户目前系统并没有赋予权限,这里我们将启动用户修改为root;另外Jenkins默认端口是8080,这个跟tomcat的默认端口冲突,我们也修改一下默认端口。Jenkins 配置文件的目录:/etc/sysconfig/jenkins。
命令:vi/vim /etc/sysconfig/jenkins

在执行 vim 命令的时候,先要确认该命令是否安装,如果没有安装,那就安装吧。
命令:# yum install -y vim

中间省略了很多步骤输出。

开始修改 Jenkins 的配置文件:# vim jenkins
【1】、修改 Jenkins 用户名,改为:“root”。


【2】、修改 Jenkins 的默认端口号:8080,我修改为:8084。


【3】、修改完毕,保存退出。
命令:# wq
修改完配置后,保存退出。好了,现在配置文件也修改好了,可以启动Jenkins了。
(6)、启动 Jenkins 服务。
命令:# service jenkins start 出现OK表示Jenkins启动成功。

(7)、在浏览器输入ip:8084进入Jenkins登录页面。
我的IP地址是:192.168.127.146,Jenkins 网页地址:http://192.168.127.146:8084。

这就是我们看到的正常页面。

如果通过地址访问出现超时的情况,而且,Windows可以ping通虚拟机的服务器,虚拟机服务器也Ping 通 Windows服务器,这种情况多是 Linux服务器防火墙的问题,可以执行以下命令。

由于linux开启了防火墙,导致windows无法访问linux服务器程序。
命令:# iptables -F
# iptables -P INPUT ACCEPT(设置默认允许规则)

(8)、查看密码:/var/lib/jenkins/secrets/initialAdminPassword
命令:# cat /var/lib/jenkins/secrets/initialAdminPassword

(9)、Jenkins首次登录,解锁Jenkins。
进入登录页面后,Jenkins提示我们需要输入超级管理员密码进行解锁。根据提示,我们可以在/var/lib/jenkins/secrets/initialAdminPassword文件里找到密码。找到密码后,复制密码,粘贴到Jenkins解锁页面,点击Continue继续初始化配置。

(10)、Jenkins 安装插件。
这里我们点击的Install suggested plugins,安装默认插件,当然你也可以点击另一个按钮安装指定的插件。点击后,页面进入了插件下载安装页面。

插件安装页面。

(11)、管理员账户注册页面。
耐心等待,全部插件安装完成。安装完成后,页面自动进入了管理员账户注册页面。


(12)、实例配置。
我选择保持默认,直接点击【保存并完成】。

(13)、Jenkins 安装完成。

(14)、我们开始使用 Jenkins。

三、总结
好了,今天就写到这里了。今天虽然很郁闷,因为了经历了很多坑,本来2个小时可以完成的工作,一下子搞了4个多小时,不管怎么说,最后还是把所有问题都解决了,值得庆贺。不忘初心,每天进步一点点。Jenkins 服务器安装成功了,下面该做其他工作了。安装 Jenkins 只是为了搭建企业级 CI/CD环境的基础。我们已经完成了第一步,继续吧。
如何在Linux(CentOS7)环境搭建 Jenkins 服务器环境的更多相关文章
- 腾讯云服务器linux centOS7.4 搭建ftp服务器 vsftpd
腾讯云服务器linux centos 7.4 搭建ftp服务器 vsftpd 在centos 7.3测试也是OK的,其它版本没有实验 # 安装 vsftpd $ yum install vsftpd ...
- pm2命令,端口查询,mongodb服务启动,nginx服务启动,n模块的使用,搭建nodejs服务器环境,搭建oracledb服务器环境 linux的环境搭建
pm2命令 pm2 ls //查询pm2 启动的列表 pm2 start app.js //启动文件 pm2 restart app //重启项目 pm2 logs app //监控项目执行日志打印 ...
- 【转】Linux环境搭建FTP服务器与Python实现FTP客户端的交互介绍
Linux环境搭建FTP服务器与Python实现FTP客户端的交互介绍 FTP 是File Transfer Protocol(文件传输协议)的英文简称,它基于传输层协议TCP建立,用于Interne ...
- Docker下搭建Jenkins构建环境
首先需要搭建好docker环境的linux系统,这个教程多如牛毛,在此不再赘述. 然后编写一个dockerfile来生成一个镜像,dockerfile其实就是一系列命令的集合,有点像windows的批 ...
- 如何在 Windows 10 中搭建 Node.js 环境?
[编者按]本文作者为 Szabolcs Kurdi,主要通过生动的实例介绍如何在 Windows 10 中搭建 Node.js 环境.文章系国内 ITOM 管理平台 OneAPM 编译呈现. 在本文中 ...
- Mac 搭建 SVN 服务器环境
Mac 搭建 SVN 服务器环境 一.创建svn repository svnadmin create /path/svn/pro //仓库位置,svn是svn的目录,pro是一个版本库的目录 PS: ...
- Linux下快速搭建php开发环境
php开发环境快速搭建 一.Linux下快速搭建php开发环境 1.安装XAMPP for Linux XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包,使用XA ...
- Windows环境搭建mysql服务器
Windows环境搭建mysql服务器: 1.下载mysql-installer-community-5.7.3.0-m13.2063434697并安装 安装详细步骤>> 2.安装mys ...
- 【svn】Centos搭建svn服务器环境
1.需求描述 在Centos系统中搭建svn服务器环境 2.搭建过程 2.1 yum安装svn [root@localhost /]# yum install svn 2.2 新建目录存储svn目录 ...
随机推荐
- Github 美化设置个人主页
起因是发现自己follow的大师傅个人主页跟普通的不太一样: 猜测应该是Github啥时候出现的新功能,查了一下,发现可以通过创建同名仓库来实现个人主页的美化设置 首先在 GitHub 上建立一个与自 ...
- 深入理解C#中的异步(一)——APM模式EAP模式
深入理解C#中的异步(一)--APM模式EAP模式 目录 深入理解C#中的异步(一)--APM模式EAP模式 1 使用异步编程的原因 2 异步编程模式 2.1 APM模式 2.1.1 APM模式示例代 ...
- 题解-CF1282E The Cake Is a Lie
题面 CF1282E The Cake Is a Lie \(T\) 组测试数据.每次给一个 \(n\) 边形的三角剖分,求节点顺序和剖分顺序. 数据范围:\(3\le n\le 10^5\),\(\ ...
- 深入理解Java虚拟机(五)——JDK故障处理工具
进程状况工具:jps jps(JVM Process Status Tool) 作用 用于虚拟机中正在运行的所有进程. 显示虚拟机执行的主类名称以及这些进程的本地虚拟机唯一ID. 可以通过RMI协议查 ...
- ajax与浏览器请求的差异对比.png
- JApiDocs(自动生成接口文档神器)
JApiDocs教程 前言 作为一名优秀的程序员来说,由于涉及到要与前端进行对接,所以避免不了的就是写接口文档.写完接口文档,一旦代码返回结果,参数等出现变动,接口文档还得随之改动,十分麻烦,违背了我 ...
- 转载-没有IE就没有伤害!浏览器兼容性问题解决方案汇总
普及:浏览器的兼容性问题,往往是个别浏览器(没错,就是那个与众不同的浏览器)对于一些标准的定义不一致导致的.俗话说:没有IE就没有伤害. 贴士:内容都是自己总结的,不免会出现错误或者bug,欢迎更正和 ...
- Editor.md解决跨域上传的问题
Editor.md解决跨域上传的问题 编辑 editormd\plugins\image-dialog\image-dialog.js 替换以下代码片段 if (settings.crossDomai ...
- Angular:使用service进行http请求的简单封装
①使用ng g service services/storage创建一个服务组件 ②在app.module.ts 中引入HttpClientModule模块 ③在app.module.ts 中引入创建 ...
- 恕我直言,你可能连 GitHub 搜索都不会用 - 如何精准搜索的神仙技巧
大家好,我是你们的 前端章鱼猫,一个不喜欢喵.又不喜欢吃鱼的超级猫 ~ 今天给大家带来的是 在 GitHub 上如何精准搜索的神仙技巧. [前端GitHub:https://github.com/bi ...