Docker Compose+Jenkins自动化部署流程图文教程

 更新时间:2026年04月28日 10:31:50   作者:ノBye~  
Jenkins是一款非常流行的开源持续集成工具,广泛用于项目开发,具有自动化构建、测试和部署等功能,这篇文章主要介绍了Docker Compose+Jenkins自动化部署流程的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下

前言

Jenkins是一个开源的持续集成与持续交付(CI/CD)自动化服务器,基于Java开发,用于自动化软件开发中的构建、测试和部署流程。

  • CI = 持续集成(检查代码好不好)
  • CD = 持续部署 / 交付(把代码发到线上跑起来)

CI(Continuous Integration)持续集成

  • 代码提交后自动拉取
  • 编译、构建
  • 单元测试
  • SonarQube 代码质量扫描
  • 检查有没有语法错、bug、漏洞

一句话:CI 是 “代码体检”,不发布、不上线、不影响线上环境。

CD(Continuous Delivery / Deployment)持续交付 / 部署

  • 把构建好的包(jar、dist、镜像)上传
  • 部署到测试环境 / 预发 / 生产
  • 重启服务
  • 发布上线

一句话:CD 是 “把代码发到线上跑起来”,真正影响运行环境。

准备工作

  • 安装Docker Compose并部署Jenkins和Git服务
  • 建议在宿主机生成SSH密钥对,将密钥挂载到容器
  • 将公钥配置到Codeup代码仓库的SSH设置中
  • Jenkins容器内部测试 SSH 连接

Jenkins配置流程

1. 创建job

2. 选择流水线类型

3. 到这里我们就开始配置Pipeline script,点击Pipeline语法,来自动生成我们需要的配置。

4. 如下图,我们Git方式,配置Git仓库地址(SSH协议),再添加认证相关。

5. 这里我们使用的是秘钥认证方式,由于jenkins是通过docker compose管理容器,推荐在宿主机上生成密钥对,然后挂载到容器中,公钥配置到git仓库SSH配置中,私钥粘贴到下图Key中,这样jenkins就可以免交互的拉取git仓库 中的代码了。

6. 配置完成后,我们就可以生成Pipeline脚本了。点击下方Generate Pipeline Script,然后复制方框内的内容。

7. 编写我们所需要的Pipeline脚本如下,将其粘贴到script的拉取代码模块中,并修改正确的分支,其他模块内容自行编写。

pipeline {
    agent any
    stages {
        stage('拉取代码') {
            steps {
                git(
                    url: 'git@codeup.aliyun.com:xxxx.git',
                    branch: 'master',
                    credentialsId: 'codeup-xxxx'  // 你在 Jenkins 中创建的凭证ID
                )
            }
        }
        stage('构建') {
            steps {
                sh 'echo "开始构建..."'
                // 你的构建命令,例如:
                // sh 'mvn clean package'
                // sh 'npm install && npm run build'
            }
        }
        stage('测试') {
            steps {
                sh 'echo "运行测试..."'
                // sh 'mvn test'
                // sh 'npm test'
            }
        }
    }
    post {
        success {
            echo 'Pipeline 执行成功!'
        }
        failure {
            echo 'Pipeline 执行失败!'
        }
    }
}

8. 立即构建,运行测试

总结

到此这篇关于Docker Compose+Jenkins自动化部署流程的文章就介绍到这了,更多相关Docker Compose+Jenkins自动化部署内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Maven 或 Gradle 下载和添加 jar 文件的最佳方式

    Maven 或 Gradle 下载和添加 jar 文件的最佳方式

    Maven是一个Java项目管理工具,它可以帮助你管理项目的依赖、编译、打包、测试和部署等过程,下面给大家介绍Maven或Gradle下载和添加jar文件的最佳方式,感兴趣的朋友一起看看吧
    2024-10-10
  • SpringCloud Feign Jackson自定义配置方式

    SpringCloud Feign Jackson自定义配置方式

    这篇文章主要介绍了SpringCloud Feign Jackson自定义配置方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • JDBC连接MySQL并实现模糊查询

    JDBC连接MySQL并实现模糊查询

    本文详细讲解了JDBC连接MySQL并实现模糊查询的方式,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-01-01
  • Java程序执行Cmd指令所遇问题记录及解决方案

    Java程序执行Cmd指令所遇问题记录及解决方案

    这篇文章主要介绍了Java程序执行Cmd指令所遇问题记录,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • Java实现从PLC读取数据的常见主流且可行方案

    Java实现从PLC读取数据的常见主流且可行方案

    要从PLC读取数据,Java本身并不直接支持PLC的通信协议,所以你需要借助一些中间件或库来实现,以下是几种主流且可行的方案,大家可以根据自己的需要进行选择
    2026-03-03
  • Java中MapStruct入门使用及对比

    Java中MapStruct入门使用及对比

    MapStruct是一个Java注解处理器框架,用于简化Java Bean之间的映射,本文主要介绍了Java中MapStruct入门使用及对比,感兴趣的可以了解一下
    2023-12-12
  • 一起聊聊Java中13种锁的实现方式

    一起聊聊Java中13种锁的实现方式

    分布式系统时代,线程并发,资源抢占,"锁" 慢慢变得很重要。那么常见的锁都有哪些?本文就来和大家聊聊Java中13种锁的实现方式,感兴趣的可以了解一下
    2022-08-08
  • 详细聊一聊java中封装的那点事

    详细聊一聊java中封装的那点事

    封装是一个非常广泛的概念,小到一个属性的封装,大到一个框架或者一个项目的封装,下面这篇文章主要给大家介绍了关于java中封装的那点事,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-04-04
  • Java中sharding-jdbc按年月分片的示例代码

    Java中sharding-jdbc按年月分片的示例代码

    本文主要介绍了Java中sharding-jdbc按年月分片的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • JavaWeb表单注册界面的实现方法

    JavaWeb表单注册界面的实现方法

    这篇文章主要介绍了JavaWeb表单注册界面的实现方法的相关资料,希望通过本文大家能掌握这部分内容,需要的朋友可以参考下
    2017-09-09

最新评论