jenkins的多节点集群
在进行自动化部署时,你可以按着它们的项目类型去进行分别部署,这样即可以达到负载均衡,又可以达到一种职责的明确,比如像java的项目你可以使用linux服务来进行部署(拉代码,还原,编译,发布,生成镜像,推镜像到仓库,建立服务等),而对于.net项目你可以使用windows服务器来实现jenkins的节点,而它们的入口都是jenkins的master,由它根据每个节点的标记进行分发!
节点各有其责
每个节点一般都会做项目的依赖包还原,代码编译,发布,镜像的生成,镜像的推送到仓库,docker服务的建立等工作,下面就来说一下这些工作的细节,如windows平台里的.net项目,它会有一个windows服务器为它提供自动化部署的服务,使用以下功能。
-
编译
-
发布
-
镜像的生成
-
镜像的推送到仓库
-
docker服务的建立
上面步骤对应的部分代码如下,SH脚本,主要在linux进行部署,如果是在windows上进行部署的话,建议使用powershell脚本。
项目编译与发布
set -exexport Publish_Path="obj\Docker\publish"echo "项目恢复"dotnet restore echo "项目编译"dotnet buildecho "项目发布"dotnet publish -o obj/Docker/publishecho "发布成功,开始构建docker镜像"
生成镜像和推送到仓库
#!/bin/shset -ex export IMAGE_NAME=microserviceOrder export Registry_Url="www.lind.cn:8443"docker build --no-cache --pull -t $IMAGE_NAME ./docker tag $IMAGE_NAME $Registry_Url/$IMAGE_NAME docker push $Registry_Url/$IMAGE_NAME
分发与jenkins项目依赖
在建立节点时可以指定它的标签,使用请求到主jenkins节点后,根据标签去分发,找到目标的节点,然后去处理相应的工作
根据构建后的项目依赖去实现自动化部署多项目的关联
以上内容就是我对jenkins集群中各节点职责,请求分发,项目依赖的理解,希望可以帮到正在学习的您!
原文地址:http://www.cnblogs.com/lori/p/7604425.html
.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注