谷歌宣布Skaffold的普遍可用性 以方便Kubernetes的发展


【谷歌宣布Skaffold的普遍可用性 以方便Kubernetes的发展】谷歌宣布Skaffold的普遍可用性 以方便Kubernetes的发展
谷歌宣布了Skaffold的通用可用性(GA),这是一个在开发和部署到Kubernetes时简化通用任务的工具 。Skaffold可以在开发模式中自动检测和部署更改,并在部署模式中构建、测试和部署更改 。Skaffold在其管道的各个阶段支持多种工具 。
Skaffold以两种模式运行——开发和部署 。在前一种模式中,通过“skaffold dev”调用,它会监视本地源代码的更改,并在检测到更改时进行构建和部署 。在“skaffold run”调用的后一种模式中,它只构建一次,然后部署和退出,因此适合CI/CD管道 。Skaffold支持用于其管道中的各个阶段的多种工具 。对于构建,它可以使用Dockerfiles、Kaniko、谷歌云构建、Bazel、maven和gradle 。它支持容器结构测试来验证构建的映像 。容器结构测试提供了YAML配置驱动的方式来运行各种测试 。对于部署,它可以与kubectl、Helm和kustomize一起工作 。
在dev模式下,Skaffold将运行中的容器的日志输出管道化,并管理从部署的应用程序到本地机器的端口转发 。它可以在文件更改时直接将文件同步到正在运行的容器中,并在重新构建时使用更新的图像标记更新Kubernetes清单 。Skaffold工作流由一个由多个阶段组成的“管道”组成 。如果阶段与上下文无关,可以跳过它们——例如,当部署的目标是本地Minikube时,不要将工件推送到远程存储库 。
Skaffold是去年在alpha上发布的 。GA版本还增加了对云本地构建包的实验性支持,通过自动安装依赖项并根据编程语言构建,这使得开发人员更容易构建容器映像 。
为了在不同的上下文中使用不同的工具集,Skaffold支持“配置文件” 。指定Skaffold配置文件中的构建、测试和部署工具可以覆盖Skaffold中提到的工具 。它是应用程序根目录中的基本配置文件 。人们可以为不同的环境使用不同的配置文件——dev、staging和prod——并相应地更改其中使用的工具 。
Skaffold还公开了一个API来与工作流中的其他工具集成 。例如,部署监视仪表板可以侦听来自Events API的通知 。这个空间里的其他工具包括牵伸、倾斜、锻造和花园 。

    推荐阅读