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 条评论
下一页