前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CentOS 7 下Jenkins安装部署教程

CentOS 7 下Jenkins安装部署教程

作者头像
KenTalk
发布2018-09-11 11:31:11
9.7K0
发布2018-09-11 11:31:11
举报
文章被收录于专栏:Ken的杂谈

一、前言

1、 Jenkins是什么?

Jenkins是一个开源的支持自动化构建、部署等任务的平台。基本上可以说是持续集成(CI)、持续发布(CD)不可或缺的工具。

官网:https://jenkins.io/

2、本篇环境信息

工具/环境

版本

Linux Server

CentOS 7

Jenkins

2.121.2

JDK

1.8.0_181

Nginx

1.14.0

3、准备工作

  • 安装JDK

参考:https://cloud.tencent.com/developer/article/1333872

将jdk1.8.0_181部署在目录/usr/java/

部署完成后,jdk的根目录就是:/usr/java/jdk1.8.0_181/

  • 安装Nginx(非必要步骤)

参考:https://cloud.tencent.com/developer/article/1334264

部署Nginx是为了方便我们通过域名访问Jenkins,如果无此需求可忽略次操作

二、Jenkins安装

1、Yum安装

  • yum源导入
代码语言:javascript
复制
#添加Yum源
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo

#导入密钥
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
  • 安装
代码语言:javascript
复制
sudo yum install -y jenkins

2、开放端口

Jenkins站点的默认监听端口是8080

代码语言:javascript
复制
sudo firewall-cmd --add-port=8080/tcp --permanent
sudo firewall-cmd --reload

3、配置Java可选路径

因为Jenkins默认的java可选路径不包含我们部署的jdk路径,所以这里要配置一下,不然Jenkins服务会启动失败

代码语言:javascript
复制
#修改jenkins启动脚本
sudo vi /etc/init.d/jenkins

#修改candidates增加java可选路径:/usr/java/jdk1.8.0_181/bin/java
candidates="
/etc/alternatives/java
/usr/lib/jvm/java-1.8.0/bin/java
/usr/lib/jvm/jre-1.8.0/bin/java
/usr/lib/jvm/java-1.7.0/bin/java
/usr/lib/jvm/jre-1.7.0/bin/java
/usr/bin/java
/usr/java/jdk1.8.0_181/bin/java
"

4、启动Jenkins并设置Jenkins开机启动

代码语言:javascript
复制
#重载服务(由于前面修改了Jenkins启动脚本)
sudo systemctl daemon-reload

#启动Jenkins服务
sudo systemctl start jenkins

#将Jenkins服务设置为开机启动
#由于Jenkins不是Native Service,所以需要用chkconfig命令而不是systemctl命令
sudo /sbin/chkconfig jenkins on

浏览器输入 http://<ip address>:8080 访问Jenkins

三、Nginx配置(非必要步骤)

1、配置Nginx反向代理Jenkins

  • 新建配置文件
代码语言:javascript
复制
#新增Jenkins专用Nginx配置文件
sudo vi /etc/nginx/conf.d/jenkins.conf

#输入以下内容并保存
server {
    listen       80;        #监听80端口
    server_name  jenkins.ken.io; #监听的域名
    access_log  /var/log/nginx/jenkins.access.log main;
    error_log  /var/log/nginx/jenkins.error.log error;

    location / {            #转发或处理
        proxy_pass http://127.0.0.1:8080; 
    }
    error_page   500 502 503 504  /50x.html;#错误页
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
}
  • 重载Nginx配置
代码语言:javascript
复制
sudo nginx -s reload

2、配置SELinux

如果不配置SELinux,通过Nginx反向代理访问,可能会产如下错误

代码语言:javascript
复制
#查看错误信息
/var/log/nginx/jenkins.error.log

#错误信息示例
connect() to 127.0.0.1:8001 failed (13: Permission denied) while connecting to upstream, client: 127.0.0.1
  • 方法1:setsebool -P httpd_can_network_connect 1
  • 方法2:
代码语言:javascript
复制
#关闭SELinux: 
sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config 
#重启:
reboot

修改本地hosts,将域名jenkins.ken.io指向CentOS IP,通过域名测试访问

四、Jenkins初始化

1、解锁Jenkins

查询root账号默认密码

代码语言:javascript
复制
cat /var/lib/jenkins/secrets/initialAdminPassword

输入密码并解锁

2、选择插件

这里直接选择“安装推荐的插件”即可

选择安装的插件后会进入插件安装界面

3、添加管理员

插件安装完成后会自动进入添加管理员界面

4、配置Jenkins URL

这里的URL指的是默认访问Jenkins的地址。

默认是是http://:8080,如果你通过Nginx配置了域名,那么直接填写配置的域名即可。

5、开始使用Jenkins

配置完Jenkins URL之后就完成了整个Jenkins配置引导

点击“开始使用Jenkins”就会进入Jenkins主页

搞定~

五、备注

  • 本文参考

https://wiki.jenkins.io/display/JENKINS/Installing+Jenkins+on+Red+Hat+distributions

https://stackoverflow.com/questions/23948527/13-permission-denied-while-connecting-to-upstreamnginx?rq=1

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018/08/10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、前言
    • 1、 Jenkins是什么?
      • 2、本篇环境信息
        • 3、准备工作
        • 二、Jenkins安装
          • 1、Yum安装
            • 2、开放端口
              • 3、配置Java可选路径
                • 4、启动Jenkins并设置Jenkins开机启动
                • 三、Nginx配置(非必要步骤)
                  • 1、配置Nginx反向代理Jenkins
                    • 2、配置SELinux
                    • 四、Jenkins初始化
                      • 1、解锁Jenkins
                        • 2、选择插件
                          • 3、添加管理员
                            • 4、配置Jenkins URL
                              • 5、开始使用Jenkins
                              • 五、备注
                              相关产品与服务
                              持续集成
                              CODING 持续集成(CODING Continuous Integration,CODING-CI)全面兼容 Jenkins 的持续集成服务,支持 Java、Python、NodeJS 等所有主流语言,并且支持 Docker 镜像的构建。图形化编排,高配集群多 Job 并行构建全面提速您的构建任务。支持主流的 Git 代码仓库,包括 CODING 代码托管、GitHub、GitLab 等。
                              领券
                              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档