jenkins+Kubernets动态节点自动化部署
2019-09-22 12:23:24   3  举报             
     
         
 jenkins通过调用Kubernets动态生成slave进行持续集成
    作者其他创作
 大纲/内容
 * jenkins通过pipleline来声明构建所需pod和容器的规格以及所有构建流程* 通过Kubernets Plugin提供的pipeline方法以及变量来决定pod的格式* POD中的Volume分两种,一种是EmptyDir用来共享所有容器中的工作目录,另一种是NFS用来共享各个pod中的maven本地仓库
    DockerRegistry
  jenkins master调用Kubernets动态生成slave
  ⑦ Kubernets从仓库pull最新的镜像部署项目pod
  NFS Server(Maven repo)
  jenkins Master
  pod
  ⑤ 容器中的docker客户端(dind)调用docker api(在jenkins上启动的)将项目build成镜像
  ⑥ 将容器镜像push到仓库中
  ④打包好的项目在Volume中
  xxxx:latestxxxx:version……
  Maven
  ② 通过JNLP协议连接Master使之成为Slave节点
  ③ Maven构建项目并将依赖install到NFS上
  ① 通过K8S API调用随机生成pod *
  DockerAPI
  Kubernets Plugin
  【Volume】*1. EmptyDir   2.NFS Mount
  JNLP Slave
  Docker in Docker
   
 
 
 
 
  0 条评论
 下一页
  
   
   
  
  
  
  
  
  
  
  
 