赞
踩
今天来讲一下 在linux上搭建jenkins
在linux上安装jenkins的前提条件是已经安装了jdk、maven、tomcat、git,
关于jdk的安装配置,可以看我之前写的一篇博客:linux的基本环境配置JDK
maven的安装配置,可以看我之前写的一篇博客:linux上配置maven环境
不安装git的话,后边配置的时候会报错
- #安装git
- yum -y install git
-
- #安装好后,看下版本
- git --version
第一步:下载tomcat的压缩包
第二步:将下载的压缩包上传到linux上
我是放在了 /root./下
第三步:解压缩
- #将tomcat解压到 /usr/local/ 目录下
- tar -zxvf apache-tomcat-9.0.8.tar.gz -C /usr/local/
因为在linux中root账户的权限是非常大的,所以一般启动软件的时候都不建议使用root账户,建议使用对应的用户启动对应的软件,所以大家可以给tomcat专门创建一个tomcat账号,用tomcat这个账号来启动tomcat服务。大家可以做一下,我这里就不做了,直接用root账户启动tomcat
下载地址: https://jenkins.io/download/
点击 Generic Java package (.war) 下载就行了
也可以通过下面这个地址,来下载你想要的版本
谷歌浏览器可能打不开,提示 您的连接不是私密连接
换个浏览器就好了
可以看到jenkins.war已经上传到了tomcat的webapp目录下
由下图可以看到,因为我的linux机器上安装部署了gitlab服务,gitlab有一项服务已经把8080端口占用了,所以需要修改一下tomcat启动的端口号
好,下面我们来修改一下tomcat启动的端口号
vim /usr/local/apache-tomcat-9.0.8/conf/server.xml
进入vim 模式 /8080 搜索到对应的地方,然后改一下,我是改成了9999
- #进入bin目录
- cd /usr/local/apache-tomcat-9.0.8/bin
-
- #启动tomcat
- ./startup.sh
启动后,浏览器访问 http://192.168.56.20:9999/jenkins,访问不了,需要开一下防火墙端口
- #开放防火墙端口
- vim /etc/sysconfig/iptables
-
- #重启防火墙服务
- systemctl restart iptables.service
然后再访问一下 http://192.168.56.20:9999/jenkins,就可以看到下面的页面
按照上图的提示把指定的内容粘贴进去,点击继续
点完继续后,会发现页面转了一会儿后,提示 该Jenkins实例似乎已离线,如下图
这怎么办呢?
打开 http://192.168.56.20:9999/jenkins/pluginManager/advanced这个页面,把最下面的 升级站点里的 URL 中https改成http,然后重启tomcat就可以了
重启tomcat,再进入 http://192.168.56.20:9999/jenkins/ 稍等一会儿,就会出现以下页面
点击 安装推荐的插件
安装插件的时候,可能会全部失败,而且一直重试也不行,可以看下我总结的另一篇文章:Jenkins安装插件一直失败,报错SunCertPathBuilderException的解决方案
如果出现插件安装失败的情况,那就按照我上边的那个文章操作一遍
把之前安装的jenkins都删除卸载:
1、先把tomcat停掉,删除 /usr/local/apache-tomcat-9.0.8/webapps 下的jenkins和jenkins.war
2、然后删除root目录下jenkins相关的文件 rm -rf /root/.jenkins/
最后在把jenkins.war再上传到/usr/local/apache-tomcat-9.0.8/webapps下,再启动tomcat,此时再进到刚才安装推荐插件的那一步,点击安装,等待几分钟,发现所有插件都安装成功后,会自动进入如下图的页面
根据提示创建用户,点击保存完成
最后再登录一下试试,下面是登录进去后的页面
到这里jenkins的安装就完成了
点击上图匡红的按钮,进入插件管理页面,如下图,点击可选插件,在搜索框输入以下五种插件
Maven Integration
SonarQube Scanner 如果不和SonarQube整合的话,也可以不安装
Publish Over SSH
Build With Parameters
Persistent Parameter
然后勾选,点最下方的 Install without restart,等待安装完成
系统管理Manage Jenkins-》全局管理Global Tool Configuration
进入全局管理页面,点 新增JDK,把自动安装的勾选去掉
填写别名 java ,JAVA_HOME填写安装jenkins的linux机器上配置的环境变量JAVA_HOME的值
配置完JDK后,继续往下翻,配置一下maven
点 新增Maven,把自动安装的勾选去掉
填写别名 maven,MAVEN_HOME填写安装jenkins的linux机器上配置的环境变量MAVEN_HOME的值
最后,点保存
往下翻,在比较靠下的位置,有一个邮件通知的配置,点高级,把整个配置的页面都打开
如下图填写SMTP服务器、用户默认邮件后缀
然后勾选使用SMTP认证,填写用户名和密码(用户名就是你发送要使用的qq邮箱,密码是你在qq邮箱里配置开启smtp服务时给你的那一串秘钥)
勾选使用SSL协议
SMTP端口:465
Reply-To Address:发件者的邮箱,就是你上面填写的那个qq邮箱
最后勾选 通过发送测试邮件测试配置,填写另外一个收件的邮箱,来测试发送一下
点击 Test configuration进行测试发送,发现报错了,如下图
报错的原因是,jenkins发送邮件是以管理员的身份来发送的,所以我们还需要配置一下上边的管理员的邮箱,如下图,填写你发送用的qq邮箱,点击保存
再去下边,测试一下发送,会看到如下图的提示:Email was successfully sent,然后你填写的收件的邮箱会收到一封邮件
如上图,里边的Private Key填啥呢?
这里边需要填一个秘钥,这个秘钥需要去安装jenkins的linux机器上去生成
连接上 安装jenkins的linux机器,执行以下命令,遇到提示,一直敲回车就行
- #生成公钥和私钥
- ssh-keygen -t rsa
执行完上边命令就会生成一对公钥和私钥 cd /root/.ssh/ 目录下,就可以看到id_rsa和id_rsa.pub
其中 id_rsa 就是私钥,id_rsa.pub 是公钥
把私钥文件里的全部内容复制,配置到刚才上图说的Private Key里,如下图
点确定
然后把生成的公钥 id_rsa.pub 配置到gitlab的ssh里
进入gitlab页面,页面左上角
github、gitee(码云)配置SSH Keys的步骤和上边gitlab配置的差不多,就不重复讲了,简单百度一下就可以了
到这里jenkins的搭建和基本配置就完成了, 下篇继续讲一下,jenkins怎么配置拉取gitlab仓库的代码并进行自动化构建部署:jenkins配置拉取git远程仓库的代码并进行自动化构建部署
纯手敲原创不易,如果觉得对你有帮助,可以打赏支持一下,哈哈,感谢~
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。