Tekton之三:快速理解 Tekton 是如何工作的

本文详细解答了Tekton在云原生环境中的使用疑惑,包括Task与Pipeline的关系、如何触发Pipeline、Task间的通信方式、访问Git资源的策略、部署Tekton遇到的问题及解决方案。Tekton是Kubernetes上的CICD工具,通过Task、PipelineRun等概念组织自动化流程。在部署Tekton时,需注意网络访问限制,可能需要手动拉取并推送镜像。此外,文章还介绍了从Git获取代码、构建和部署Docker镜像的基本流程。

Tekton 是云原生环境下面的非常强大的 CICD 产品。 如果你按照 Tekton 的官方文档来学习,使用 Tekton, 可能会跟遇到很多障碍。 Tekton 的技术架构非常优秀,同时Tekton 不太好的产品体验,使得这个优秀工具的应用困难了很多。 

Tekton 的官方文档: Getting Started | Tekton

按照这个官方文档, 你可能会有很多疑问:

1.Task 和 Pipeline 我要单独一个个创建吗?正确的运行 Pipeline 的姿势是什么?

2.每次执行一个 Pipeline 需要通过 命令行 kubectl apply 一个 PipelineRun 的 yaml 来触发吗?

3.最简单的定义一个包含 Task 和 Pipeline 的例子是怎么样的?

4.每一个 Task/Step 都在独立的容器中运行, 那么容器直接如何交换数据,比如之前取到的代码,后面如何使用?

5.Tekton 的官方文档说不建议使用 PipelineResources,但官网还没有更新文档, 那么正确的方法如何访问 Git?  这里是  Pipeline 的文档: https://tekton.dev/docs/pipelines/pipelines/#specifying-resources

6.最简单的从 Git 仓库获取代码 的例子是怎么样的?

7.我在 kubernetes 环境中根本部署不起来 tekton,报错访问不到 gcr.io,我该如何部署呢?

8.我需要部署哪些服务和资源,可以把 tekton 用起来, 完成 从拉取代码,构建 Docker 镜像,推送镜像, 部署新镜像到 k8s 环境的过程?

有这么多的疑问, 加上在国内的环境中要部署起来 Tekton 是一件非常困难的事情。下面一个个来解答这些问题,帮助你解决遇到的这些障碍。

1.Task 和 Pipeline 我要单独一个个创建吗?正确的运行 Pipeline 的姿势是什么?

不需要一个个创建 Task,然后在 Pipeline 里面引用。 可以在 Pipeline 的 Yaml 定义内嵌的 Task。这种 Task 属于自定义的 Task。 如果用的是 Tekton Hub 里面的 Task, 比如 git-clone 这个 Task,那么是需要事先部署 Task 到 K8S 环境的,Pipeline, Task 都是 Kubernetes 里面的 CRD(自定义资源,即 Custom Resource Definition)。

几个重要的概念:

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值