Docker Compose+Jenkins自动化部署全流程

准备工作

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

Jenkins配置流程

1. 创建job

2. 选择流水线类型

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

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

  1. 这里我们使用的是秘钥认证方式,由于jenkins是通过docker compose管理容器,**推荐在宿主机上生成密钥对,然后挂载到容器中,**公钥配置到git仓库SSH配置中,私钥粘贴到下图Key中,这样jenkins就可以免交互的拉取git仓库 中的代码了。
  1. 配置完成后,我们就可以生成Pipeline脚本了。点击下方Generate Pipeline Script,然后复制方框内的内容。
  1. 编写我们所需要的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 执行失败!'
         }
     }

    }

  2. 立即构建,运行测试

相关推荐
Madison-No71 小时前
Git版本控制工具(一)
git
JeJe同学5 小时前
Docker镜像导入、容器启动
linux·运维·docker
小小小米粒9 小时前
重置本地git
大数据·git·elasticsearch
元Y亨H10 小时前
基于 Jenkins + Docker 的前端(Vben Admin)CI/CD 踩坑
docker·jenkins
白兰地空瓶11 小时前
项目要上线了,我连夜学完 Docker:从底层原理到容器化部署全记录
docker·全栈
Knight_AL13 小时前
PostgreSQL Docker 数据库备份:pg_dump 与 SQL 格式备份的区别
数据库·docker·postgresql
灯澜忆梦14 小时前
【docker】#1 | Docker 初识
运维·docker·容器
小白的码BUG之路15 小时前
Jenkins -- 连接gitee
运维·gitee·jenkins
骑着蜗牛撵大象32715 小时前
穿越 Docker 内核迷雾:镜像分层的叠加态与卷挂载的空间穿梭
运维·docker·容器·联合文件系统·卷挂载·镜像分层·存储驱动
goehou15 小时前
AI 应用上线实战:从本地脚本到 Docker 容器化(密钥、健康检查、镜像瘦身)
docker·ai·llm·部署·教程·容器化