Jenkins部署配置及Jenkinsfile流水线任务示例【无图版】

本文主要是介绍Jenkins部署配置及Jenkinsfile流水线任务示例【无图版】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、下载

  • JDK环境下载:https://repo.huaweicloud.com/java/jdk/11.0.1+13/jdk-11.0.1_linux-x64_bin.tar.gz

  • Jenkins安装包下载:https://github.com/jenkinsci/jenkins/releases/tag/jenkins-2.375.3

二、Jdk/Java环境配置

  • 解压
tar -zxvf jdk-11.0.1_linux-x64_bin.tar.gz
mv jdk-11.0.1_linux-x64_bin /usr/local/jdk
  • 添加环境变量

vim /etc/profile

#   追加写入
........
# Java11
export JAVA_HOME=/usr/local/jdk
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:${PATH}
export PATH=/usr/local/node/bin:${PATH}
  • 使配置生效
source /etc/profile

三、Jenkin初始化

  • jenkins存放目录
/www/jenkins/jenkins.war
  • 启动
nohup java -jar jenkins.war --httpPort=9080 > jenkins.log 2>&1 &
  • 安装

启动后在浏览器访问http://ip:9080,根据提示在~/.jenkins/secrets/initialAdminPassword文件中找到初始密码,根据提示选择安装推荐的插件

Install suggested plugins,安装后以后根据提示创建账号密码。

四、Jenkins配置

  • 添加全局SSH密钥【密钥为Jenkins所在服务器的私钥】

​ 地址:http://localhost:9080/manage/credentials/store/system/domain/_/

​ web界面:系统管理—>Manage Credentials—>System—>全局凭据 (unrestricted)—>Add Credentials ,根据要求添加私钥

  • 插件安装

    【Docker Pipline】:使用Jenkins构建镜像时需用到

    【build user vars】:获取构建者信息时需用到

五、流水线任务配置

1.创建一个流水线任务

以【FirstPipeline】为例

【web地址】:http://localhost:9080/job/FirstPipeline/configure

2.修改以下配置:

  • 2.1【Throttle builds】

    构建数:1
    Time period:Secone
    
  • 2.2 只勾选【不允许并发构建】

  • 2.3【参数化构建过程】:选择字符参数

    名称:target
    默认值:test
    描述:
    test:测试环境
    prod:生产环境
    
  • 2.4【流水线】

    定义:Pipeline script from SCM
    SCM:Git
    Repository URL:项目代码仓库地址
    Credentials:全局凭据里的保存的私钥
    Branches to build:指定分支:*/test
    源码库浏览器:(自动)
    脚本路径:Jenkinsfile
    勾选轻量级检出
    

六、Vue项目Jenkinsfile示例

采用指定节点声明式流水线写法

node {stage('拉取代码'){try {echo "拉取最新代码!"checkout scm}catch(err) {echo "拉取失败!"throw err}}stage('打包') {try{sh 'node --version'sh 'pnpm --version'sh 'pnpm --registry https://registry.npm.taobao.org install --no-frozen-lockfile'sh 'pnpm build'}catch(err){echo 'pnpm build failed'throw err}}stage('部署') {if (env.target == 'prod') {sh "rsync -zcav -e ssh dist/* server01:/data/www/website"}}stage('清理'){deleteDir()}
}

七、一些说明

这种方式未增加自动触发构建发布操作,每次更新代码后需手动到Jenkins上流水线任务中点击Build with Parameters才可触发构建发布操作。后续再更新配合gitlab webhook进行提交触发构建的步骤及所需的Jenkins 插件文档。

这篇关于Jenkins部署配置及Jenkinsfile流水线任务示例【无图版】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/441438

相关文章

Java中读取YAML文件配置信息常见问题及解决方法

《Java中读取YAML文件配置信息常见问题及解决方法》:本文主要介绍Java中读取YAML文件配置信息常见问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录1 使用Spring Boot的@ConfigurationProperties2. 使用@Valu

Jenkins分布式集群配置方式

《Jenkins分布式集群配置方式》:本文主要介绍Jenkins分布式集群配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装jenkins2.配置集群总结Jenkins是一个开源项目,它提供了一个容易使用的持续集成系统,并且提供了大量的plugin满

如何在Ubuntu 24.04上部署Zabbix 7.0对服务器进行监控

《如何在Ubuntu24.04上部署Zabbix7.0对服务器进行监控》在Ubuntu24.04上部署Zabbix7.0监控阿里云ECS服务器,需配置MariaDB数据库、开放10050/1005... 目录软硬件信息部署步骤步骤 1:安装并配置mariadb步骤 2:安装Zabbix 7.0 Server

SpringBoot线程池配置使用示例详解

《SpringBoot线程池配置使用示例详解》SpringBoot集成@Async注解,支持线程池参数配置(核心数、队列容量、拒绝策略等)及生命周期管理,结合监控与任务装饰器,提升异步处理效率与系统... 目录一、核心特性二、添加依赖三、参数详解四、配置线程池五、应用实践代码说明拒绝策略(Rejected

SQL中如何添加数据(常见方法及示例)

《SQL中如何添加数据(常见方法及示例)》SQL全称为StructuredQueryLanguage,是一种用于管理关系数据库的标准编程语言,下面给大家介绍SQL中如何添加数据,感兴趣的朋友一起看看吧... 目录在mysql中,有多种方法可以添加数据。以下是一些常见的方法及其示例。1. 使用INSERT I

SpringBoot中SM2公钥加密、私钥解密的实现示例详解

《SpringBoot中SM2公钥加密、私钥解密的实现示例详解》本文介绍了如何在SpringBoot项目中实现SM2公钥加密和私钥解密的功能,通过使用Hutool库和BouncyCastle依赖,简化... 目录一、前言1、加密信息(示例)2、加密结果(示例)二、实现代码1、yml文件配置2、创建SM2工具

MySQL 定时新增分区的实现示例

《MySQL定时新增分区的实现示例》本文主要介绍了通过存储过程和定时任务实现MySQL分区的自动创建,解决大数据量下手动维护的繁琐问题,具有一定的参考价值,感兴趣的可以了解一下... mysql创建好分区之后,有时候会需要自动创建分区。比如,一些表数据量非常大,有些数据是热点数据,按照日期分区MululbU

SQL Server配置管理器无法打开的四种解决方法

《SQLServer配置管理器无法打开的四种解决方法》本文总结了SQLServer配置管理器无法打开的四种解决方法,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录方法一:桌面图标进入方法二:运行窗口进入检查版本号对照表php方法三:查找文件路径方法四:检查 S

Python函数作用域示例详解

《Python函数作用域示例详解》本文介绍了Python中的LEGB作用域规则,详细解析了变量查找的四个层级,通过具体代码示例,展示了各层级的变量访问规则和特性,对python函数作用域相关知识感兴趣... 目录一、LEGB 规则二、作用域实例2.1 局部作用域(Local)2.2 闭包作用域(Enclos

C++20管道运算符的实现示例

《C++20管道运算符的实现示例》本文简要介绍C++20管道运算符的使用与实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录标准库的管道运算符使用自己实现类似的管道运算符我们不打算介绍太多,因为它实际属于c++20最为重要的