阿粉的公司是用 Jenkins 去做的 DevOps 实践,那么想要快速熟悉 Jenkins ,第一步就是去把它搭建一下,这周末闲着没事就玩了一把,将整个过程和大家分享下
Jenkins 是什么
Jenkins 是什么嘞?它提供了软件开发的持续集成服务,运行在 Servlet 容器中(例如 Apache Tomcat )。它支持软件配置管理( SCM )工具(包括 AccuRev SCM、CVS、Subversion、Git、Perforce、Clearcase 和 RTC ),可以执行基于 Apache Ant 和 Apache Maven 的项目,以及任意的 Shell 脚本和 Windows 批处理命令
有点儿晦涩难懂?那就记住一句话就可以了, Jenkins 的存在是为了简化我们的开发流程,比如我们往 git 上提交了代码, Jenkins 就会自动拉取最新的代码帮我们部署
CentOS7 下 Jenkins 搭建过程
Jenkins 需要 jdk 环境,阿粉这里就不做示范了
安装完 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 搭建便是完成了
是不是还挺简单~
可能遇到的问题
1 ,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