专栏中心

EEPW首页 > 专栏 > 使用jenkins进行流水线编译

使用jenkins进行流水线编译

发布人:天翼云开发者 时间:2025-07-04 来源:工程师 发布文章

本文分享自天翼云开发者社区《使用jenkins进行流水线编译》,作者:****媛

一、什么是CI/CD

企业应用程序开发参与者通常由开发人员,测试人员/QA工程师,运维工程师以及SRE(站点可靠性工程师)或IT运营团队组成。他们紧密合作,目标是高质量软件交付。CI/CD是两个独立过程的组合:CI(持续集成)/CD(持续部署)。

通过CI/CD流水线,软件研发可以实现从代码签入、测试、构建和部署直至生产阶段都在流水线中向前推进。

本文描述如何通过jenkins实现代码的流水线编译。

二、镜像制作

在代码编译过程中,编译环境是个重要因素,有可能由于不同研发人员的机器环境有差异,导致编译失败。为了实现标准化流程,可以采用基础镜像和容器使得编译环境统一。

镜像制作过程与常用docker命令:

1. 编写Dockerfile

Dockerfile 是一个文本文件,包含了构建 Docker 镜像的所有指令。通过定义一系列命令和参数,Dockerfile 指导 Docker 构建一个自定义的镜像。

可以通过FORM命令指定该镜像基于哪个基础镜像制作,相当于拿哪一台电脑作为基础,在上面安装需要的工具。

2. 构建镜像

使用ducker build 进行镜像构建,-t后面指定nginx为镜像名称,:后面是给这个镜像打一个标签;注意最后的.代表当前目录,可以将工具的安装包和Dockerfile都放在当前文件中,默认使用Dockerfile文件,或者使用-f参数指定自定义的文件名称

docker build -f Dockerfile -t nginx:v3 .

3. 查看镜像

Docker images查看本地镜像

4. 推送仓库存储

可以使用docker push将镜像推送到harbor仓库存储,若本地镜像丢失,机器会去harbor上拉取对应的镜像

 

三、容器编译

通过docker run启动一个容器,在容器中使用编译命令进行编译

 

四、jenkins编写流水线

Jenkins是一个可以持续集成,持续交付,持续部署的自动化工具。

通过将脚本写到jenkinsfile中,是机器按照脚本中的命令执行各个阶段的操作。

Jenkinsfile由几个部分组成:

(1)Agent: 指定执行的节点

(2)Options: 运行时的选项

(3)Environment:定义环境变量

(4)Stages:阶段(具体的操作在这里完成)

(5)Post:构建后的操作(包含不同情况:总是、成功、失败、取消后)

 

Jenkinsfile的阶段:

一个流水线可以有一个或多个阶段,在每个阶段里定义步骤,步骤中编写具体的脚本。

         stages {
        stage('Checkout') { //代码检出
            steps {
                script {...}
                      }
         }
         stage('Build-Package') { //编译打包
             when { 设置触发条件 }
             steps {
                script {...}
                      }
           }
         stage('Upload') { //介质上传
            steps {
                script {...}
                      }
         }
}
post {
      success{ //成功时后续操作
              script {...}
      }
      failure{ //失败时后续操作
              script {...}
      }
}

专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们

关键词: 大数据

相关推荐

GMIF2024聚焦产业创新之道 共谋存储生态繁荣发展

大数据产业链构成分析

物联网开发者大会清华张林演讲

资源下载 2016-12-13

IDC预计,2028年中国大数据总体市场规模将超621亿美元

智能计算 2025-04-21

IDC预计,2029年中国大数据总体市场规模将超730亿美元

智能计算 2025-09-11

大数据在物流行业的应用

资源下载 2020-04-03

工信部:我国新能源汽车发展正带动产业生态全面重塑

晶圆代工厂商牵手RISC-V企业,瞄准低功耗AI芯片

基于大数据与深度学习的穿戴式运动心率算法

用大数据方法协助研发下一代电池电解液

2024年政府工作十大任务发布,大数据、人工智能是重点

丰田将与腾讯在电动汽车人工智能、云计算和大数据方面展开合作

上海:加快智算芯片国产化部署

如何快速搭建Hadoop运行环境

资源下载 2020-04-01

大数据时代

资源下载 2015-05-23
更多 培训课堂
更多 焦点
更多 视频

技术专区