jenkins使用手册

一.jenkins安装部署

1.jenkins运行环境

硬件配置:4cpu+4Gmemory

ip:172.25.254.20

hostname:jenkins-node

2.jenkins安装

下载jenkins

复制代码
[root@jenkins-node ~]# wget https://mirrors.aliyun.com/jenkins/rpm-
stable/jenkins-2.568.3-1.noarch.rpm

安装jenkins的依赖关系

复制代码
[root@jenkins-node ~]# yum install fontconfig java-21-openjdk git -y

安装jenkins

复制代码
[root@jenkins-node ~]# dnf install jenkins-*.rpm -y

启动jenkins

复制代码
[root@jenkins-node ~]# systemctl enable --now jenkins

3.初始化jenkins

复制代码
[root@jenkins-node ~]# cd /var/lib/jenkins/
[root@jenkins-node jenkins]# ls
config.xml                        jobs              secret.key                
updates
hudson.model.UpdateCenter.xml     nodeMonitors.xml  secret.key.not-so-secret  
userContent
jenkins.telemetry.Correlator.xml  plugins           secrets                   
users
[root@jenkins-node jenkins]# ls plugins/                #插件目录,启动服务后默认为
空
#解压插件到jenkins插件目录
[root@jenkins-node jenkins]# ls /root/
jenkins-2.568.3-1.noarch.rpm  plugin.tar.gz
[root@jenkins-node jenkins]# tar zxf /root/plugin.tar.gz  -C /var/lib/jenkins/
[root@jenkins-node jenkins]# ls plugins/
ant                                     jackson2-api.jpi               pipeline
model-extensions
antisamy-markup-formatter               jackson3-api                   pipeline
model-extensions.jpi
antisamy-markup-formatter.jpi           jackson3-api.jpi               pipeline
stage-step
ant.jpi                                 jackson-annotations2-api       pipeline
stage-step.jpi
apache-httpcomponents-client-4-api      jackson-annotations2-api.jpi   pipeline
stage-tags-metadata
apache-httpcomponents-client-4-api.jpi  jakarta-activation-api         pipeline
stage-tags-metadata.jpi
asm-api                                 jakarta-activation-api.jpi     plain
credentials
asm-api.jpi                             jakarta-mail-api               plain
credentials.jpi
bootstrap5-api                          jakarta-mail-api.jpi           plugin
util-api
bootstrap5-api.jpi                      jakarta-xml-bind-api           plugin
util-api.jpi
bouncycastle-api                        jakarta-xml-bind-api.jpi       prism
api
bouncycastle-api.jpi                    javax-activation-api           prism
api.jpi
branch-api                              javax-activation-api.jpi       resource
disposer
branch-api.jpi                          jaxb                           resource
disposer.jpi
build-timeout                           jaxb.jpi                       scm-api
build-timeout.jpi                       jjwt-api                       scm
api.jpi
caffeine-api                            jjwt-api.jpi                   script
security
caffeine-api.jpi                        joda-time-api                  script
security.jpi
checks-api                              joda-time-api.jpi              
snakeyaml-api
checks-api.jpi                          jquery3-api                    
snakeyaml-api.jpi
cloudbees-folder                        jquery3-api.jpi                
snakeyaml-engine-api
cloudbees-folder.jpi                    json-api                       
snakeyaml-engine-api.jpi
commons-lang3-api                       json-api.jpi                   ssh
credentials
commons-lang3-api.jpi                   json-path-api                  ssh
credentials.jpi
commons-text-api                        json-path-api.jpi              ssh
slaves
commons-text-api.jpi                    jsoup                          ssh
slaves.jpi
credentials                             jsoup.jpi                      structs
credentials-binding                     junit                          
structs.jpi
credentials-binding.jpi                 junit.jpi                      theme
manager
credentials.jpi                         ldap                           theme
manager.jpi
dark-theme                              ldap.jpi                       
timestamper
dark-theme.jpi                          localization-support           
timestamper.jpi
display-url-api                         localization-support.jpi       token
macro
display-url-api.jpi                     localization-zh-cn             token
macro.jpi
durable-task                            localization-zh-cn.jpi         trilead
api
durable-task.jpi                        mailer                         trilead
api.jpi
echarts-api                             mailer.jpi                     variant
echarts-api.jpi                         matrix-auth                    
variant.jpi
eddsa-api                               matrix-auth.jpi                woodstox
core-api
eddsa-api.jpi                           matrix-project                 woodstox
core-api.jpi
email-ext                               matrix-project.jpi             workflow
aggregator
email-ext.jpi                           mina-sshd-api-common           workflow
aggregator.jpi
font-awesome-api                        mina-sshd-api-common.jpi       workflow
api
font-awesome-api.jpi                    mina-sshd-api-core             workflow
api.jpi
git                                     mina-sshd-api-core.jpi         workflow
basic-steps
git-client                              okhttp-api                     workflow
basic-steps.jpi
git-client.jpi                          okhttp-api.jpi                 workflow
cps
github                                  pipeline-build-step            workflow
cps.jpi
github-api                              pipeline-build-step.jpi        workflow
durable-task-step
github-api.jpi                          pipeline-github-lib            workflow
durable-task-step.jpi
github-branch-source                    pipeline-github-lib.jpi        workflow
job
github-branch-source.jpi                pipeline-graph-view            workflow
job.jpi
github.jpi                              pipeline-graph-view.jpi        workflow
multibranch
git.jpi                                 pipeline-groovy-lib            workflow
multibranch.jpi
gradle                                  pipeline-groovy-lib.jpi        workflow
scm-step
gradle.jpi                              pipeline-input-step            workflow
scm-step.jpi
gson-api                                pipeline-input-step.jpi        workflow
step-api
gson-api.jpi                            
step-api.jpi
instance-identity                       
support
instance-identity.jpi                   
support.jpi
ionicons-api                            
cleanup
ionicons-api.jpi                        
cleanup.jpi
jackson2-api                            
pipeline-milestone-step        
pipeline-milestone-step.jpi    
pipeline-model-api             
workflow
workflow
workflow
pipeline-model-api.jpi         
pipeline-model-definition      
pipeline-model-definition.jpi
[root@jenkins-node jenkins]# systemctl restart jenkins.service

修改密码

二.gitlab与jenkins的整合

1.在jenkins中新建项目

2.在jenkins中生成密钥

复制代码
[root@jenkins-node ~]# ssh-keygen
[root@jenkins-node ~]# cat /root/.ssh/id_ed25519.pub
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMAGGKXmK0GIxytO1TGh6I9fj8T3mNHqQ2D3QbdyEMcv 
root@jenkins-node

3.上传公钥到gitlab

3.上传私钥到jenkins中

设定jenkins自动接收远程身份认证

上传私钥

复制代码
[root@jenkins-node .ssh]# cat id_ed25519-----BEGIN OPENSSH PRIVATE KEY----
b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAMwAAAAtzc2gtZW
QyNTUxOQAAACDABhil5itBiMcrTtUxoeiPX4/E95jR6kNg90G3chDHLwAAAJhah6h6Woeo
egAAAAtzc2gtZWQyNTUxOQAAACDABhil5itBiMcrTtUxoeiPX4/E95jR6kNg90G3chDHLw
AAAEAovP0kVVod7uvbm8HUmfwn2i+V47N4SqTVw8QnCaCnhMAGGKXmK0GIxytO1TGh6I9f
j8T3mNHqQ2D3QbdyEMcvAAAAEXJvb3RAamVua2lucy1ub2RlAQIDBA==-----END OPENSSH PRIVATE KEY----

4.配置jenkins中的timinglee项目

复制代码
[root@jenkins-node .ssh]# dnf install git -y        
#安装git工具

构建信息

三.gitlab出发jenkins build

1.安装gitlab插件

2.设定触发方式

3.设定gitlab主动通知jenkins

4.测试

复制代码
[root@code-node timinglee]# echo update test >> lee
[root@code-node timinglee]# git commit  -a -m "lee v3"
[main 9eb16bb] lee v3
1 file changed, 1 insertion(+)
[root@code-node timinglee]# git push  origin  main
枚举对象中: 5, 完成.
对象计数中: 100% (5/5), 完成.
使用 2 个线程进行压缩
压缩对象中: 100% (2/2), 完成.
写入对象中: 100% (3/3), 292 字节 | 292.00 KiB/s, 完成.
总共 3(差异 0),复用 0(差异 0),包复用 0(来自  0 个包)
To 172.25.254.10:root/timinglee.git
558dc0c..9eb16bb  main -> main
相关推荐
VidDown1 小时前
用户说“卡顿“,服务器一切正常:播放质量监测与 QoE 指标
运维·服务器·ffmpeg·音视频·视频
瑞克-桑切斯1 小时前
13、DNS、DHCP 与 FTP 协议详解
linux·运维·云计算
程序员-Benothing1 小时前
Linux性能分析方法论:USE、RED、火焰图与perf实战
linux·运维·服务器
问心无愧05131 小时前
[ACTF2020 新生赛]Exec
运维·服务器·笔记
cg.family1 小时前
K8S:scale 与 delete pod 核心区别
运维·docker·容器
开开心心_Every2 小时前
黄金价格软件国内外价格实时监控超方便
运维·服务器·游戏·智能手机·pdf·lua·perl
Initialize293082 小时前
systemd 服务起不来?五步排查法
运维
LMT_Lanmantech2 小时前
HyperWorks许可:almutil显示Unit满了,数据到底准不准?
运维·服务器·算法
system_error_x2 小时前
服务器的替代方案:从物理机到云原生的全面对比
运维·服务器·云原生