欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 养生 > JENKINS(全面)

JENKINS(全面)

2025/3/11 15:39:57 来源:https://blog.csdn.net/weixin_67725462/article/details/145286038  浏览:    关键词:JENKINS(全面)

一.linux系统中JENKINS的安装

注意:安装jenkins需要安装jdk,而且具体版本的jenkins有相对应的jdk版本。可参考以下链接。

Redhat Jenkins 软件包https://pkg.jenkins.io/redhat-stable/https://pkg.jenkins.io/redhat-stable/https://pkg.jenkins.io/redhat-stable/https://pkg.jenkins.io/redhat-stable/https://pkg.jenkins.io/redhat-stable/https://pkg.jenkins.io/redhat-stable/https://pkg.jenkins.io/redhat-stable/https://pkg.jenkins.io/redhat-stable/https://pkg.jenkins.io/redhat-stable/

jenkins的安装也可以去jenkins的官网,官网有安装手册

我的系统配置   2核cpu  8G 内存  40G磁盘

Linux的https://www.jenkins.io/doc/book/installing/linux/https://www.jenkins.io/doc/book/installing/linux/https://www.jenkins.io/doc/book/installing/linux/https://www.jenkins.io/doc/book/installing/linux/https://www.jenkins.io/doc/book/installing/linux/https://www.jenkins.io/doc/book/installing/linux/https://www.jenkins.io/doc/book/installing/linux/https://www.jenkins.io/doc/book/installing/linux/https://www.jenkins.io/doc/book/installing/linux/这里安装的是比较新版本的jenkins

sudo wget -O /etc/yum.repos.d/jenkins.repo  https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key
sudo yum upgrade
# Add required dependencies for the jenkins package
sudo yum install fontconfig java-17-openjdk
sudo yum install jenkins
sudo systemctl daemon-reload

安装好之后启动jenkins,但是我的这个systemctl start jenkins是有问题的(可以去看一下jenkins的service文件。这里不细说)

所以我直接使用命令启动jenkins

/usr/bin/jenkins  

然后它会一直在前端运行,按ctrl+c 就能终止jenkins

或者放到后台执行

nohup /usr/bin/jenkins &>/dev/null &

然后登陆http://<jenkins服务ip>:8080

加载插件。以前是这个插件没有加载成功就进不去,但是我今天插件还没有完全下载好。有两个插件没有安装好也能进入主页面了。进去之后输入初始密码然后再配置一个新账号(超级用户)

登陆的初始密码

二.安装插件的方法

可以参考管理插件https://www.jenkins.io/doc/book/managing/plugins/https://www.jenkins.io/doc/book/managing/plugins/https://www.jenkins.io/doc/book/managing/plugins/https://www.jenkins.io/doc/book/managing/plugins/https://www.jenkins.io/doc/book/managing/plugins/https://www.jenkins.io/doc/book/managing/plugins/https://www.jenkins.io/doc/book/managing/plugins/https://www.jenkins.io/doc/book/managing/plugins/https://www.jenkins.io/doc/book/managing/plugins/

jenkins插件的存放位置

1.首先可以去康康这个里面,这个里面是可用可直接下载的插件。可以先在这里康康能不能直接把刚刚缺少的插件下载安装

我刚进去的时候,这个里面有你刚刚初始化的时候没有装好的插件

2.如果web界面下载失败,可以先直接下载到本地,然后传到/root/.jenkins/plugins下

去网站下

Jenkins Pluginshttps://plugins.jenkins.io/

输入你想下载的插件

选择要安装的版本点击即会下载到本地

上传

三、jenkins相关

1.邮箱配置 系统管理的系统配置里  前面 这三个邮箱要一样

2.远程拉取代码

1)直接克隆

从gitlab上拉取代码到jenkins然后,由jenkins部署到web上

*就是jenkins像我这样安装的时候默认启动服务的用户是jenkins,jenkins很多权限都没有,所以要更改启动jenkins服务的用户,改成root。

find / -name "jenkins.service"

vim path/jenkins.service

User=jenkins

Group=jenkins

ssh-keygen -t rsa -b 4096 -C "3515694112@jenkins"
ssh-copy-id root@<web.ip>

在jenkins生成私钥公钥后

把公钥放到gitlab上

私钥放到jenkins的

2)配置拉取

这里插入一下

Jenkins 用户配置文件

这个文件记录了jenkins插件的更新源

3.jenkins构建触发器

触发器一般在测试环境中使用,当gitlab中的代码发生变化的时候,gitlab会主动触发jenkins,然后执行相关服务代码的重新上线。

老版本是使用插件,但是新版本使用插件已经没有用了。

构建触发器(不安装插件)

可以自己生成一个随机token

openssl rand -hex 12(随机的 12 字节的十六进制字符串)

然后触发任务脚本执行

4.pipline的使用

我觉得pipline是把任务模块化了,而脚本是直接执行一整个大任务

流水线语法https://www.jenkins.io/zh/doc/book/pipeline/syntax/

下面是一个简单的pipline script

pipeline {agent any //这个设置,可以在stage中设置哪个jenkins执行(master,slave) 更灵活stages {stage('change dir') {steps {dir('/jenkins') {// some block}}}stage('shell script') {steps {sh '''echo "I love you"'''}}}
}

还可以把pipline scripts传到gitlab上去然后clone一下执行(pipline声明式)

5.jenkins的分布式

如果jenkins的服务负载很高,单个是无法承载的,就要分布式

Jenkins slave 要安装jdk

mkdir /var/lib/jenkins #jenkins相关数据路径

推荐slave的工作目录和master的工作目录一样的路径,因为后面执行脚本啥的方便

jenkins master会以ssh的方式连接jenkins slave ,具体就不说了。有需要的同学call我吧,实在懒得截屏

脚本路径是jenkins在gitlab中的路径

可以把Jenkinsfile上传到gitlab上,然后jenkins从gitlab上拉取

代码质量测试

jenkins实现灰度部署

灰度部署就是对于要更新的服务,我们先对后端服务器的一部分进行更新,然后等到确定这个更新后的服务也能稳定运行之后在陆续更新全部的服务器

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词