架构第十八章:jenkins

CI&CD:

持续集成注重将各个开发者的工作集合到一个代码仓库中,通常每天会进行几次, 主要目的是尽早发现集成错误,使团队更加紧密结合,更好地协作。

持续交付的目的是最小化部署或发布过程中团队固有的摩擦, 它的实现通常能够将构建部署的每个步骤自动化,以便任何时刻能够安全地完成代码发布(理想情况下)。

持续部署是一种更高程度的自动化,无论何时代码有较大改动, 都会自动进行构建/部署。

Jenkins:

Jenkins是开源CI&CD软件领导者, 提供超过1000个插件来支持构建、部署、自动化, 满足任何项目的需要。

官方文档:

https://www.jenkins.io/zh/doc/

下载jenkiins:

https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat/jenkins-2.222-1.1.noarch.rpm

#################################################################################################

环境:

Jenkins:192.168.8.20

gitlab: 192.168.8.10

1.安装:

复制jenkins包到虚拟机/root下

cd /root

rpm -ivh jenkins-2.222-1.1.noarch.rpm

2.修改配置文件(默认jenkins端口为8080,如果同gitlab一起安装,需要修改端口)

vim /etc/sysconfig/jenkins

修改:

JENKINS_USER="root"

JENKINS_PORT="8081"

保存退出

3.启动jenkins

复制代码
systemctl start jenkins
systemctl enable jenkins

4.加快更新

vim /var/lib/jenkins/hudson.model.UpdateCenter.xml

更改:https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

保存退出

vim /var/lib/jenkins/updates/default.json

更改第一行:把www.google.com改成www.baidu.com

保存退出

systemctl restart jenkins

5.登录jenkins

http://192.168.8.20:8081

6.输入密码

cat /var/lib/jenkins/secrets/initialAdminPassword

复制加密密码字段,粘贴到web

7.选择安装插件

选择右上角"X",进入

8.复制插件包到虚拟机

解压复制内容到/var/lib/jenkins/plugins下

cd /root

tar xf jenkins-plugins.tar.gz

cd plugins/

cp -rp * /var/lib/jenkins/plugins/

9.修改admin用户密码

右上角--admin点击下拉三角--Configure--Password字段--修改密码--save保存

重启服务:systemctl restart jenkins

10.jenkins关联gitlab

(1)点击左上角logo--回到主页面--选择新项目"New Item"--填写项目名--选择项目类型"Freestyle project"--save保存

(2)配置项目--源代码管理--git--填写存储库网址(git@192.168.8.10:dev/web.git)--报红字错误,则需要添加root用户认证

--如果认证成功--save保存

(3)选择项目--左侧选择"build now"--下面构建历史出现蓝色标志--选择蓝色标志下拉列表--console output--输出执行过程

(4)jenkins服务器上查看/var/lib/jenkins/workspace目录,会有项目同名文件夹,保存git clone 的所有代码

相关推荐
CeshirenTester38 分钟前
从数据库到结构化用例:一套可落地的测试智能体架构
数据库·架构
VillanelleS44 分钟前
AI工程化之Agent架构
人工智能·架构
天若有情6733 小时前
通用个性化推荐核心架构思路:从视频到电商的跨场景落地实践
人工智能·算法·架构·推流·个性化推荐·猜你喜欢
源远流长jerry3 小时前
DPDK MP (Multi-Process) 通道深度解析
linux·网络·架构·ip
奔跑的呱呱牛3 小时前
GeoJSON 在大数据场景下为什么不够用?替代方案分析
java·大数据·servlet·gis·geojson
毛骗导演4 小时前
@tencent-weixin/openclaw-weixin 源码ContextToken 持久化改造:实现微信自定义消息发送能力
前端·架构
黄俊懿4 小时前
【架构师从入门到进阶】第二章:系统衡量指标——第一节:伸缩性、扩展性、安全性
分布式·后端·中间件·架构·系统架构·架构设计
guoji77884 小时前
Gemini 3.1 Pro 原生多模态架构深度拆解:统一表示、交叉注意力与联合训练
架构
一叶飘零_sweeeet4 小时前
击穿 Kafka 高可用核心:分区副本、ISR 机制与底层原理全链路拆解
分布式·架构·kafka
一叶飘零_sweeeet5 小时前
高可用架构核心:限流熔断降级全解,Sentinel 与 Resilience4j 原理 + 落地实战
架构·sentinel