写点什么

谷歌发布 Skaffold 的正式版本,用来简化 Kubernetes 的开发

  • 2019-12-25
  • 本文字数:994 字

    阅读完需:约 3 分钟

谷歌发布Skaffold的正式版本,用来简化Kubernetes的开发

谷歌发布Skaffold 的普遍可用版本(general availability,GA),Skaffold 是一个在开发和部署针对 Kubernetes 环境的应用时,简化一些通用任务的工具。在开发模式下,Skaffold 能够自动探测和部署变更,在部署模式下,能够自动构建、测试和部署变更。Skaffold 在其管道的各个阶段支持多个工具。


Skaffold 可以按照两个模式运行:开发和部署。开发模式可以通过“skaffold dev”启用,它会监视本地源码的变化,当探测到变化时,它会进行构建和部署。部署模式可以通过“skaffold run”启用,它会构建一次、部署并退出,这一点使其非常适合 CI/CD 管道。Skaffold 在其管道的各个阶段支持多个工具。在构建阶段中,它可以与 Dockerfiles、Kaniko、Google Cloud Build、Bazel、maven 和 gradle 协作。它支持通过container-structure-test校验构建而成的镜像。Container-structure-test 提供了一个 YAML 配置驱动的方式来运行各种测试。对于部署阶段,它可以与 kubectl、Helmkustomize协作。


在开发模式下,Skaffold 会管道化运行中容器的日志输出并管理已部署应用到本地机器的端口转发。当文件发生变化的时候,它能够直接将文件同步到运行中的容器中,并且能够在镜像重新构建的时候,将 Kubernetes manifests更新为新的镜像标签。Skaffold 的工作流是由一个“管道(pipeline)”组成的,管道包含多个阶段(stage)。如果阶段与当前上下文无关的话,它们可以跳过,比如如果部署目标是本地 Minikube 的话,将不会推送制件(artifact)到远程仓库。



图片来源:https://skaffold.dev/docs/design/


Skaffold 是在去年宣布 alpha 版本的。GA 发布版本也添加了对 Cloud Native Buildpacks实验性支持,该功能会让开发人员构建容器镜像更容易,它会基于编程语言自动安装依赖并进行构建。


要在不同的上下文中使用不同的工具,Skaffold 支持“profiles”功能。特定 Skaffold profile 的构建、测试和部署工具可以覆盖上文所述的 skaffold.yml,该文件是位于应用根路径的基础配置文件。我们可以为不同的环境(dev、staging 和 prod)使用不同的 profiles,并相应地改变它们所使用的工具。


Skaffold 还暴露了API以便于与工作流中的其他工具进行集成。例如,部署监控仪表盘可以监听来自 Events API 的通知。该领域中的其他工具包括Draft, TiltForgeGarden


原文链接:


Google Announces General Availability of Skaffold for Easing Kubernetes Development


2019-12-25 09:002473

评论

发布
暂无评论
发现更多内容

软件测试 | 普罗米修斯 - HTTP API调用PromQL

测吧(北京)科技有限公司

测试

滴滴前端二面常考react面试题(持续更新中)

夏天的味道123

前端 React

海泰方圆精彩亮相第六届中国人工智能与大数据海南高峰论坛

电子信息发烧客

模块7 王者荣耀商城-异地多活架构

KING

软件测试 | 简历中应该如何描述才能体现出软技能的实力?

测吧(北京)科技有限公司

测试

软件测试 | 跨平台设备管理方案Selenium Grid

测吧(北京)科技有限公司

测试

软件测试 | 普罗米修斯 - 初识PromQL

测吧(北京)科技有限公司

测试

详细解读 React useCallback & useMemo

夏天的味道123

前端 React

软件测试 | UI自动化设计军规

测吧(北京)科技有限公司

测试

软件测试 | HTTPS 的通信加解密过程,证书为什么更安全?

测吧(北京)科技有限公司

测试

软件测试 | UI自动化常用设计模式

测吧(北京)科技有限公司

测试

小程序与微服务架构如何进行结合

Onegun

小程序 微服务架构 移动开发

【网易云商】概念解读稳定性保障

网易云信

稳定性 稳定性测试

软件测试 | UI自动化中的分层设计

测吧(北京)科技有限公司

测试

解决方案| anyRTC 融合其他厂商视频会议系统方案

anyRTC开发者

音视频 私有云 视频会议 视频通话 H.323

社交泛娱乐之外,融云 IM 在商业沟通中的实践

融云 RongCloud

IM 泛娱乐 通讯

EMQ广州Office正式启用|在新一站续写开源

EMQ映云科技

开源 物联网 IoT emq 企业号 3 月 PK 榜

软件测试 | 普罗米修斯 - 自定义exporter

测吧(北京)科技有限公司

测试

经常被问到的react-router实现原理详解

夏天的味道123

前端 React

软件测试 | 普罗米修斯 - PromQL进阶

测吧(北京)科技有限公司

测试

低代码如何推动自动化未来

力软低代码开发平台

软件测试 | UI自动化常用设计模式(二)

测吧(北京)科技有限公司

测试

API+DevOps:华为云API Arts一体化平台,端到端呵护您的API

科技怪授

API 华为云

FlagOpen大模型技术开源体系,开启大模型时代“新Linux”生态

硬科技星球

ChatGPT“爆红”启示:工业AI如何掀起新型“工业革命”?

Openlab_cosmoplat

人工智能 开源 工业 智能制造 ChatGPT

软件测试| 普罗米修斯 - 基本使用

测吧(北京)科技有限公司

测试

美团前端二面经典react面试题总结

夏天的味道123

前端 React

DataEase 集成 CAS 实现用户单点登录

搞大屏的小北

CAS SSO 单点登录 BI 分析工具 DataEase

前端刷完这12道滑动窗口,就可以出山面试了

js2030code

JavaScript LeetCode

谷歌发布Skaffold的正式版本,用来简化Kubernetes的开发_软件工程_Hrishikesh Barua_InfoQ精选文章