jenkins - Jenkins-Docker集成-使用Jenkins构建Docker镜像并推送到注册表

标签 jenkins continuous-integration docker

我目前正在将Docker与Jenkins集成在一起,并且目前正在尝试找出以下管道:

每当在GIT中更新Dockerfile时,触发Jenkins Job进行以下操作

  • 构建Docker镜像
  • 列表项
  • 测试,验证Docker镜像
  • 版本化镜像-产品,测试等。
  • 将图像推送到注册表
  • 如果未构建镜像,请使用适当的机制来获取日志

  • 根据我的研究,我发现Jenkins有2个用于Docker集成的不同插件-构建步骤插件和Docker构建发布插件。据我所见,在将镜像推送到存储库之前,我看不到任何插件或工作流程来测试镜像。由于我们是从头开始的,所以我想知道最好的方法。

    任何帮助表示赞赏。

    最佳答案

    我们将类似“git flow”的思维方式应用于docker镜像的创建。在我们的解决方案中,无需测试图像本身。我们解决了将Build in拆分为“Source-Build”的问题,从而产生 Artifact 和下游作业,例如“运行时构建”仅将 Artifact 打包到运行时中并推送到注册表中。此时,整个堆栈都将交付到“发布阶段”以进行自动测试。

    关于jenkins - Jenkins-Docker集成-使用Jenkins构建Docker镜像并推送到注册表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28874252/

    相关文章:

    git - 使用 GitFlow 构建推广究竟是如何工作的?

    bash - 如何从bash脚本启动Docker容器?

    c# - SonarQube 无法完成构建后步骤

    amazon-web-services - 为安装在 AWS EC2 上的 Jenkins 设置 GitHub Webhook

    git - Jenkins GitHub 插件无法选择我的凭据

    node.js - 如何在 Gitlab 中为 nodejs 应用程序运行测试

    node.js - `npm install` 总是从 package.json 安装所有东西

    amazon-web-services - 用于AWS ECS时的存储要求

    Docker 提交对构建镜像的更改

    github : how to authenticate by key? 中的 Jenkinsfile 和 terraform 模块