在项目开发过程中,我们使用git进行源码管理,Jenkins进行程序构建,并打包成docker镜像,但对同一个工程的不同分支改如何处理,要达到以下要求:不同的分支,docker镜像的tag不同。
在实际操作过程中遇到一个问题:同一个git不同的分支在同一个工作目录中会产生同名的目录,如果构建两个job,指定不同的分支,在同时执行构建时会产生混乱,这就需要用户在操作时注意查看和区分。现在的想法时,操作时不需要参考其他的job,只专注要执行的job即可。
通过搜索查询到Git Parameter这个插件,它可以实现,用户在构建时,会把现有的分支或tag拉取过来,让用户进行选择要进行构建的分支或tag。下面是使用步骤:
1,安装Git Parameter插件
进入系统管理中的“管理插件”,点击“可选插件”,右上角输入Git Parameter,找到该插件后点击左下方的【直接安装】。
2,插件安装成功后,就配置相关参数。
进行job的配置页面,勾选“参数化构建过程”,然后选择"GIT Parameter"。
将会展示parameter的所需信息,填写考如下:
接下来在源码中使用添加的parameter,注意:红框处要使用$加参数名方式,参数名为在上一步中添加的name。
接下来要改造docker镜像构建过程,这里使用shell的方式进行构建。注意:参数在shell中可以作为环境变量直接使用。shell中进行判断时会将/转换为目录地址,所以要在红圈内进行转换。
3.添加成功后,“立即构建”变成了"Build with Parameters",点击后进入参数(分支)选择页面。选择参数,点击“开始构建”。
到现在就可以根据选择的分支,产生不同tag的镜像了,用户操作时不依赖其他job,直接选择要构建的分支即可。
相关推荐
码头工人詹金斯Jenkins 的 Docker 镜像此 Docker 映像包含: Java 和 maven 来构建你的 Java 项目Active Directory 身份验证的默认配置使用私有 ssh 密钥的默认配置访问 git 服务器如何配置 Active Directory 身份...
jenkins、node、git、docker自动化编译,自动化构建镜像的方法参考
1.拉取3Jenkins镜像 docker pull jenkins/jenkins 2.查看镜像文件 docker images 3.创建Jenkins挂载目录并授权权限 创建:mkdir -p /usr/local/jenkins/data 授权:chmod -R 777 /usr/local/jenkins/data ...
一个传统的 Docker 镜像构建器,它简单地接受来自任何 Github 存储库的 webhooks,为该存储库构建一个镜像,并将其推送到提供的注册中心,并使用与存储库相同的名称标记其 git SHA。 为什么我不直接使用 Docker Hub ...
通过Jenkins完成docker的容器升级,镜像打包,上传仓库
Docker+Jenkins+GitLab+Maven+SpringBoot&SpringCloud实现自动化构建镜像与部署详解 https://www.jianshu.com/p/bdb0642b7495 本文章会涉及Docker常见命令基础知识点结合不同场景实操一起使用。 本文章会涉及结合...
注意:最新版本的Jenkins官方Docker镜像缺少docker二进制文件所依赖的运行库libltdl,需要使用apt install libltdl-dev进行安装 其他:由于Jenkins Workspace中的文件均为临时性文件,当磁盘负担较重时可以使用-v /...
利用写好的Docker和构建脚本,生成新的docker镜像并push到dockerhub官方镜像仓库(大家也可以自己搭建本地镜像仓库或者使用过阿里云镜像仓库) 生成镜像后,构建脚本里会直接run这个新的docker容器,项目部署成功,...
Jenkins Docker 镜像 w/ GCloud SDK + 额外的 Jenkins 插件 这个镜像建立在官方的每周 Jenkins Docker Image 。 另外安装: Oracle JDK 7(最新的镜像构建点) 包含多个组件的 Google Cloud SDK 适用于 Go、Java...
一定要安装最新版的 jenkins,旧版本,很多插件无法安装 2.查看jenkins的详细信息 docker inspect jenkins:2.200 3.创建jenkins 目录(做持久化) mkdir /home/jenkins_home 4.启动容器 docker run -d --name ...
怎么样构建自己的镜像、Dockerfile的ADD、RUN、CMD、ENTRYPOINT、EVN、ARG、VOLUME等各种指令的原理和使用实战。 Docker私服Nexus3的搭建,怎么样利用私服推拉镜像,管理镜像。 什么是持续集成、什么是容器化集成和...
Jenkins在Dockerhub上有官方镜像和社区镜像,根据官方描述,Jenkins的镜像已经由社区接管维护,镜像为jenkinsci/jenkins,所以这次的集成就用这个社区版的Jenkins。因为我的docker已经进行了swarm集群处理,所以可以用...
搭建Jenkins构建环境需要安装jdk、maven、tomcat、jenkins,另外还安装了GIT,用来构建GIT来源的代码,内容如下: FROM centos:7 # author info MAINTAINER xulijian 514045152@qq.com # install wget to download ...
只是某些shell命令不同而已,windows服务器用户,呃,我敬你是条汉子)客户端用的macdocker镜像平台为dockerhub服务器开通SSH服务器安装Docker掌握基本的shell命令(本文出现的shell命令都会进行说明,c
jenkins_module_mo 詹金斯学习计划。 分配詹金斯:任务1.准备该模块的工具和存储库。 在Github / Gitlab / any中创建一个git仓库。...根据Jenkins最新的docker镜像构建自己的Jenkins docker镜像。 您的自定义图
Jenkins & Pipeline + Kubernetes & Docker + Git + Maven + Harbor?工作流程:手动/自动构建 -> Jenkins 调度 K8S API?->动态生成 Jenkins Slave pod -> Slave pod 拉取 Git 代码/编译/打包镜像 ->推送到镜像...
[1] Jenkins从github仓库中克隆了“ DOCKER-profile-app-mongodb”,并构建了一个新的docker镜像。 [2] Jenkins将新映像推送到Docker Hub。 [3]詹金斯(Jenkins)克隆了这个git repo并指示Terraform构建AWS云基础...
jenkins-dsl:我的Jenkins实例的Jenkins DSL,保持最新状态,将存储库镜像到私有git,构建所有Dockerfile等
詹金斯·波克基于官方docker镜像设置的自定义jenkins docker镜像,带有一些插件和git凭据。 官方詹金斯的官方詹金斯设置cp jenkins/ssh-key-example jenkins/ssh-keyssh-keygen -t ed25519# Update jenkins/ssh-key#...
Apache Cassandra构建工具 Jenkins Job DSL脚本创建CI作业: ... RPM: docker build -t cass-build-rpms -f docker/centos7-image.docker docker/默认情况下,映像将包含Apache git存储库的克隆。 通过添加--build-arg