Jenkins 是 DevOps 的核心枢纽,扮演着核心的持续集成/持续交付(CI/CD)引擎角色,它连接开发与运维,自动化软件交付流程,确保质量与效率。
一、Jenkins简介
Jenkins是一个用Java编写的开源的持续集成工具。 官方网站:https://jenkins.io/。
Jenkins提供了软件开发的持续集成服务。它运行在Servlet容器中(Tomcat)。
Jenkins 能实时监控持续集成过程中所存在的问题,提供详细的日志文件和提醒功能, 还能用图表的形式,形象地展示项目构建的趋势和稳定性。
持续集成
持续集成(英语:Continuous integration,缩写为 CI),一种软件工程流程,将所有工程师对于软件的工作复本,每天集成数次到共用主线(mainline)上。持续集成主要是强调开发人员提交了新代码之后,立刻进行构建、(单元)测试。根据测试结果,我们可以确定新代码和原有代码能否正确地集成在一起。简单来讲就是:频繁地(一天多次)将代码集成到主干。
持续交付
持续交付(英语:Continuous delivery,缩写为 CD),是一种软件工程手法,让软件产品的产出过程在一个短周期内完成,以保证软件可以稳定、持续的保持在随时可以释出的状况。
它的目标在于让软件的建置、测试与释出变得更快以及更频繁。这种方式可以减少软件开发的成本与时间,减少风险。
持续交付是在持续集成的基础上,将集成后的代码部署到更贴近真实运行环境的「类生产环境」(production-like environments)中。比如,我们完成单元测试后,可以把代码部署到连接数据库的 Staging 环境中更多的测试。如果代码没有问题,可以继续手动部署到生产环境中。
持续部署
持续部署(英语:Continuous Deployment,缩写为 CD),是持续交付的下一步,指的是代码通过评审以后,自动部署到生产环境。
有时候,持续部署也与持续交付混淆。持续部署意味着所有的变更都会被自动部署到生产环境中。持续交付意味着所有的变更都可以被部署到生产环境中,但是出于业务考虑,可以选择不部署。如果要实施持续部署,必须先实施持续交付。
二、安装与配置Jenkins(OpenEuler)
导入安装源
wget -O /etc/yum.repos.d/jenkins.repo --no-check-certificate
https://pkg.jenkins.io/redhat-stable/jenkins.repo
rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key
安装jenkins
yum install fontconfig java-17-openjdk -y jenkins支持最低版本java17及以上
yum install jenkins -y
如果原有java其他版本可先卸载再删除:
java -version查看java版本 设置开机自启
查看服务端口并登录jenkins 服务ip:8080端口

导入登录密码
[root@jenkins ~]# cat /var/lib/jenkins/secrets/initialAdminPassword
fa041812a53a478eb47ae69264731f81
安装登录
安装必要插件
Publish Over SSH
maven integration
配置jenkins邮箱并测试


三、自动化部署PHP实验(OpenEuler)
四台主机:1、web1作为试验机用来测试自动部署;2、k8s-master作为代码提供和上传主机;3、gitlab主机用来存储代码;4、jenkins用来实现自动化流水部署。
基础配置:
主机一、web1:
主机二、k8s-master:在gitlab服务机创建好项目后进行测试代码编写和推送
主机三、jenkins:使用Jenkins账户生成ssh密钥添加到gitlab的服务页面中。


3.1、检测jenkins与web1以及gitlab的连接


主机四、gitlab从服务页新建项目
完成上述基础操作后开始测试
1、k8s-mater主机上克隆gitlab项目编写代码并推送
2、jenkins服务页面新建自由任务
源码管理添加gitlab项目的ssh克隆URL代码并选择好分支
构建步骤使用代码语言构建用来传输测试文件




750

被折叠的 条评论
为什么被折叠?



