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

本文涉及的产品
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
函数计算FC,每月15万CU 3个月
简介: 本文主要演示如何在阿里云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

通过以下命令可以查看初始化密码,默认用户名是admin:

image.png

登录jenkins:

image.png

点击安装推荐的插件:

image.png

image.png

创建管理员账户:

image.png

保存并完成配置:

image.png

在Jenkins首页点击 Configure a cloud 继续配置连接Kubernetes集群用于动态分配构建节点:

image.png

点击Go to plugins manager:

image.png

选择Kubernetes插件并点击Download now and install after restart:

image.png

等待插件下载完毕并自动重启(页面显示的安装进度有问题,可以直接访问Jenkins首页查看是否跳转至登录页面):

image.png

重新登录Jenkins:

image.png

继续配置Kubernetes集群:

image.png

Kubernetes 地址: https://kubernetes.default.svc:443

禁用 HTTPS 证书检查: 勾选

命名空间: 自定义,动态生成的slave pod运行在指定的命名空间下,如default

凭据:参考“如何创建连接ASK集群的凭证”

Jenkins地址和通道配置: 参考 “如何配置jenkins地址和jenkins通道

Pod Template配置: 参考https://developer.aliyun.com/article/783848


如何创建连接ASK集群的凭证

获取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

点击保存。



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

相关实践学习
巧用云服务器ECS制作节日贺卡
本场景带您体验如何在一台CentOS 7操作系统的ECS实例上,通过搭建web服务器,上传源码到web容器,制作节日贺卡网页。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
目录
相关文章
|
2月前
|
缓存 Kubernetes Docker
GitLab Runner 全面解析:Kubernetes 环境下的应用
GitLab Runner 是 GitLab CI/CD 的核心组件,负责执行由 `.gitlab-ci.yml` 定义的任务。它支持多种执行方式(如 Shell、Docker、Kubernetes),可在不同环境中运行作业。本文详细介绍了 GitLab Runner 的基本概念、功能特点及使用方法,重点探讨了流水线缓存(以 Python 项目为例)和构建镜像的应用,特别是在 Kubernetes 环境中的配置与优化。通过合理配置缓存和镜像构建,能够显著提升 CI/CD 流水线的效率和可靠性,助力开发团队实现持续集成与交付的目标。
|
5月前
|
存储 Serverless 数据库
科普文:云计算服务类型IaaS, PaaS, SaaS, BaaS, Faas说明
本文介绍了云计算服务的几种主要类型,包括IaaS(基础设施即服务)、PaaS(平台即服务)、SaaS(软件即服务)、BaaS(后端即服务)和FaaS(函数即服务)。每种服务模式提供了不同的服务层次和功能,从基础设施的提供到应用的开发和运行,再到软件的交付使用,满足了企业和个人用户在不同场景下的需求。文章详细阐述了每种服务模式的特点、优势和缺点,并列举了相应的示例。云计算服务的发展始于21世纪初,随着互联网技术的普及,这些服务模式不断演进,为企业和个人带来了高效、灵活的解决方案。然而,使用这些服务时也需要注意服务的稳定性、数据安全性和成本等问题。
3406 4
|
24天前
|
机器学习/深度学习 数据采集 人工智能
容器化机器学习流水线:构建可复用的AI工作流
本文介绍了如何构建容器化的机器学习流水线,以提高AI模型开发和部署的效率与可重复性。首先,我们探讨了机器学习流水线的概念及其优势,包括自动化任务、确保一致性、简化协作和实现CI/CD。接着,详细说明了使用Kubeflow Pipelines在Kubernetes上构建流水线的步骤,涵盖安装、定义流水线、构建组件镜像及上传运行。容器化流水线不仅提升了环境一致性和可移植性,还通过资源隔离和扩展性支持更大规模的数据处理。
|
23天前
|
Cloud Native 安全 Serverless
云原生应用实战:基于阿里云Serverless的API服务开发与部署
随着云计算的发展,Serverless架构日益流行。阿里云函数计算(Function Compute)作为Serverless服务,让开发者无需管理服务器即可运行代码,按需付费,简化开发运维流程。本文从零开始,介绍如何使用阿里云函数计算开发简单的API服务,并探讨其核心优势与最佳实践。通过Python示例,演示创建、部署及优化API的过程,涵盖环境准备、代码实现、性能优化和安全管理等内容,帮助读者快速上手Serverless开发。
|
7月前
|
jenkins 持续交付 开发工具
jenkins学习笔记之一:流水线基础语法
jenkins学习笔记之一:流水线基础语法
|
4月前
|
弹性计算 人工智能 自然语言处理
魔搭社区与函数计算:高效部署开源大模型的文本生成服务体验
在数字化时代,人工智能技术迅速发展,开源大模型成为重要成果。魔搭社区(ModelScope)作为开源大模型的聚集地,结合阿里云函数计算,提供了一种高效、便捷的部署方式。通过按需付费和弹性伸缩,开发者可以快速部署和使用大模型,享受云计算的便利。本文介绍了魔搭社区与函数计算的结合使用体验,包括环境准备、部署应用、体验使用和资源清理等步骤,并提出了改进建议。
|
5月前
|
机器学习/深度学习 监控 物联网
函数即服务(FaaS)
函数即服务(FaaS)
212 6
|
5月前
|
Kubernetes 安全 Linux
ansible-install-k8s 之 1 初始化环境
ansible-install-k8s 之 1 初始化环境
|
7月前
|
存储 算法 数据挖掘
表格存储(Tablestore)支持 Serverless 低成本向量检索服务
在当今 GPT 技术盛行的时代,大模型推动了向量检索技术的迅猛发展。向量检索相较于传统的基于关键词的检索方法,能够更精准地捕捉数据之间的语义关系,极大提升了信息检索的效果。特别是在自然语言处理、计算机视觉等领域,向量能够将不同模态的数据在同一空间中进行表达和检索,推动了智能推荐、内容检索、RAG 和知识库等应用的广泛普及。阿里云表格存储(Tablestore)的多元索引提供了向量检索能力。表格存储是一款 Serverless 的分布式结构化数据存储服务,诞生于 2009 年阿里云成立时,主要特点是分布式、Serverless 开箱即用、按量付费、水平扩展和查询功能丰富和性能优秀等。
567 16
|
6月前
|
Kubernetes Linux Docker
在centos7上搭建k8s环境
在centos7上搭建k8s环境

相关产品

  • 函数计算