Serverless Kubernetes容器服务中快速部署jenkins环境及执行流水线构建-阿里云开发者社区

开发者社区> 阿里云容器服务 ACK> 正文
登录阅读全文

Serverless Kubernetes容器服务中快速部署jenkins环境及执行流水线构建

简介: 本文主要演示如何在阿里云Serverless Kubernetes服务上快速搭建jenkins持续集成环境,并基于提供的示例应用快速完成应用源码编译、镜像构建和推送以及应用部署的流水线。

本文主要演示如何在阿里云Serverless Kubernetes服务上快速搭建jenkins持续集成环境,并基于提供的示例应用快速完成应用源码编译、镜像构建和推送以及应用部署的流水线。


前置条件

您已经创建了ACK Serverless Kubernetes集群。


快速部署Jenkins on ASK

部署jenkins:

$ git clone https://github.com/AliyunContainerService/jenkins-on-serverless.git
$ cd jenkins-on-serverless


在部署之前,您还需要创建一个NAS共享存储卷(参考https://help.aliyun.com/document_detail/189293.html)来保存/var/jenkins_home下的数据,目标jenkins master pod重启后配置丢失。使用NAS共享存储卷修改serverless-k8s-jenkins-deploy.yaml中注释部分字段:


```

       #volumeMounts:

       #  - mountPath: /var/jenkins_home

       #    name: jenkins-home

     .....

     #volumes:

     #  - name: jenkins-home

     #    nfs:

     #      path: /

     #      server:

```


部署:

$ kubectl apply -f serverless-k8s-jenkins-deploy.yaml

查看jenkins服务访问地址:

image.png

登录jenkins,默认用户名密码为admin/admin,登录后请修改。:

image.png

点击 安装推荐的插件(已默认安装):

image.png

保存并完成配置:

image.png

获取token连接kubernetes集群:

$ kubectl get secret
NAME                         TYPE                                  DATA   AGE
ack-jenkins-sa-token-q9g6v   kubernetes.io/service-account-token   3      28m
default-token-bn9zr          kubernetes.io/service-account-token   3      27h
$ kubectl get secret ack-jenkins-sa-token-q9g6v -o jsonpath={.data.token} |base64 -d
xxxxxxxxxxxxxxxx

创建Secret Text类型凭证,Secret内容为xxxxxxxxxxxxxxxx,名字自定义,本示例为ask-jenkins-token

image.png

在系统管理->系统配置->Kubernetes cloud云中继续配置Kubernetes地址,选择凭据ask-jenkins-token,点击连接测试验证连接是否正常。

image.png

继续配置jenkins地址和jenkins通道:

image.png

点击保存。


构建demo-pipeline测试ASK集群分配slave pod以及slave pod连接jenkins master是否正常:

image.png


如何挂载maven缓存、如何为kaniko推送容器镜像设置权限等问题请参考:https://developer.aliyun.com/article/783848

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享: