Jenkins
Jenkins 简介
JENKINS 是一个用 JAVA 编写的开源的持续集成工具。在与 ORACLE 发生争执后,项目从HUDSON 项目独立出来。 • JENKINS 提供了软件开发的持续集成服务。它运行在 SERVLET 容器中(例如 APACHE TOMCAT)。它支持软件配置管理(SCM)工具(包括 ACCUREV SCM、CVS、SUBVERSION、GIT、PERFORCE、CLEARCASE 和 RTC),可以执行基于 APACHE ANT 和 APACHE MAVE的项目,以及任意的 SHELL 脚本和 WINDOWS 批处理命令。JENKINS 的主要开发者是川口耕介。JENKINS 是在 MIT 许可证下发布的自由软件。
官方网站:https://jenkins.io/
清华镜像地址:https://mirrors.tuna.tsinghua.edu.cn/jenkins/
企业代码上线发展史
代码发布上线是每一个 IT 企业必须要面临的,而且不管是对开发或者是运维来说,代码上线本身就是一个件非常痛苦的事情,很多时候每一次发布都是一次考验。为了提高上线的效率,代码上线的方式,方法,工具也不断的发展,基本上可以分为以下几个阶段:
阶段 1-没有构建服务器
阶段 2-晚上进行构建
阶段 3-晚上进行构建并进行自动化测试
阶段 4-代码质量度量
阶段 5-更加认真地对待测试
阶段 6-验收测试和更加自动化的部署
阶段 7-持续部署
Jenkins 安装
可以从 Jenkins 官方网站及清华镜像站下载 jenkins 安装包。
# 安装 jdk rpm -ivh jdk-8u121-linux-x64.rpm java -version # 安装 jenkins rpm -ivh jenkins-2.72-1.1.noarch.rpm # 启动、配置 jenkins systemctl start jenkins systemctl status jenkins
Jenkins 默认监听 8080,服务启动后我们可以在浏览器中输入 http://您服务器的 ip 地址:8080 访问 jenkins 服务。
根据提示获取默认密码:cat /var/lib/jenkins/secrets/initialAdminPassword
进入到下面的界面,直接点 X,跳过安装
点击 start using Jenkins
进入到了 Jenlkins
然后配置系统管理的用户名和密码:用户统一使用 root,密码自行设置,必须要窂记,忘记很麻烦。
插件管理
我们选择文件上传插件,在 Jenkins 中,一切皆文件。可以在清华源中下载:https://mirrors.tuna.tsinghua.edu.cn
我们要把插件文件放到这个位置:ll /var/lib/jenkins/plugins/
重新启动:systemctl restart jenkins
Jenkins 常用目录及文件
学习 Jenkins,首先要明白一点,那就是 jenkins 下一切兼文件,也就是说 jenkins 没有数据库,所有的数据都是以文件的形式存在,所以我要了解 Jenkins 的主要目录及文件,通过命令我们可以查看到所有的 jenkins 目录及文件的位置。
rpm -ql jenkins /etc/init.d/jenkins /etc/logrotate.d/jenkins /etc/sysconfig/jenkins /usr/lib/jenkins /usr/lib/jenkins/jenkins.war /usr/sbin/rcjenkins /var/cache/jenkins /var/lib/jenkins /var/log/jenkins
Jenkins 主配置文件
/etc/sysconfig/jenkins 是 Jenkins 的主配置文件:我们在这里主要配置 Jenkins 的工作目录、启动用户、启动端口。
Jenkins 默认的用户为 jenkins,生产环境建议使用 jenkins 用户,然后使用 sudo 进行授权,我们教学过程为了避免各种权限问题,改为 root 用户。
Jenkins 主目录
/var/lib/jenkins 是 Jenkins 默认配置的主工作目录,我们可以在主配置文件进行设置。
其中主要的目录为 jobs 目录:存放 jobs 的配置及每次构建的结果;
plugins 目录:Jenkins 插件目录,存放我们已经安装的插件;worksspace:工作区目录,每次 job 执行构建时的工作目录,users 目录,存放与用户相关的配置文件。
Jenkins 主程序目录
/usr/lib/jenkins/jenkins.war 是 Jenkins 的主程序
其他目录及文件
/var/log/Jenkins Jenkins 日志文件目录
/etc/init.d/Jenkins Jenkins 启动文件