如何在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目录 ...
随机推荐
- Fiddle过滤目标主机
测试某管理系统,查看接口的调用: 点击Actions->Run Filterset now,即可过滤出设置的域名. 若使用通配符*,可将含域名的一级二级域名过滤出.
- 1、pytorch写的第一个Linear模型(原始版,不调用nn.Modules模块)
参考: https://github.com/Iallen520/lhy_DL_Hw/blob/master/PyTorch_Introduction.ipynb 模拟一个回归模型,y = X * w ...
- Day1 Scrum 冲刺博客
团队作业4--项目冲刺 第一篇博客 一. 各个成员在 Alpha 阶段认领的任务 蔡越,冷沐样:视觉元素设计与方块类Cell开发 周梓波,纪昂学:游戏功能逻辑开发,即抽象出主要元素对应的数据类型 廖业 ...
- js中单引号和双引号区别
总结: 1.无论单引号还是双引号都是成双成对出现的,否则报错!浏览器在读到第一个双引号开始,第二个双引号结束,同样浏览器读取单引号也是第一个开始,第二个单引号结束,在使用的时候必须遵循规则那就是一对双 ...
- js去除html标签
<script> //替换掉所有的 html标签,得到html标签中的内容 var content = "<p><font color=#000000>没 ...
- windows隐藏文件
attrib命令用来显示或更改文件属性. ATTRIB [+R | -R] [+A | -A ] [+S | -S] [+H | -H] [[drive:] [path] filename] [/S ...
- Redis达到最大占用内存后的淘汰策略
1. 查询Redis最大占用内存 # 查询最大占用内存 config get maxmemory # 为0时在64操作系统中不限制内存,在32位操作系统中最大为3GB 2. Redis设置最大占用内存 ...
- Excel优雅导出
流程 原来写过一篇文章,是介绍EasyExcel的,但是现在有些业务需要解决,流程如下 1.需要把导出条件转换成中文并存入数据库 2.需要分页导出 3.需要上传FTP或者以后上传OSS 解决方案 大体 ...
- Jackson:我是最牛掰的 Java JSON 解析器(有点虚)
在当今的编程世界里,JSON 已经成为将信息从客户端传输到服务器端的首选协议,可以好不夸张的说,XML 就是那个被拍死在沙滩上的前浪. 很不幸的是,JDK 没有 JSON 库,不知道为什么不搞一下.L ...
- [日常摸鱼]bzoj1444 [JSOI2009]有趣的游戏——AC自动机+矩阵
今天学校跳蚤市场摆摊聚众吸毒打call,东西卖了一百多好开心_(:з」∠)_ (然后大家中午就去吃了一顿好的x) 下午听演讲然后现在来填坑orz(其实是昨晚的坑) 题目:bzoj1444 先用字符串构 ...