QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

谷歌发布 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:002261

评论

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

架构实战营 模块九 作业

脉醉

架构实战营

原创万字总结人工智能技术栈与学习路线 上集 基础篇

cv君

AI 引航计划

924清退在即,你的币转入数字货币钱包了吗?

CECBC

模块九作业

VE

架构实战营

数据库:B/B+树

正向成长

B+树 B树

推荐2个网站,牛x就完事了!

Jackpop

手把手带你做好团队管理|引航计划|管理

石云升

团队管理 管理 引航计划 技术专题合集

中国法定数字货币(DCEP)全面启航!全国普及势在必行

CECBC

仁兄,可曾听闻OpenVINO

cv君

AI 引航计划

电商秒杀系统

feitian

Vue3 + TypeScript 开发实践总结

程序员海军

大前端 Vue3 引航计划

从头开始(概率)学HMM:精讲第一课-隐马尔可夫模型定义

herosunly

AI 引航计划 内容合集

在线HTTP请求/响应头转JSON工具

入门小站

工具

如虎添翼!6款备受欢迎的Edge浏览器插件

Jackpop

决策树——从原理走向实战

cv君

AI 引航计划

JavaScript 脚本优化的 10 个技巧

devpoint

JavaScript 性能优化 10月月更

设计电商秒杀系统

gawaine

架构训练营

手把手带你做好项目管理|引航计划|管理

石云升

项目管理 管理 引航计划 技术专题合集

AI驱动!7款开发者必备生产力工具

Jackpop

从头开始(概率)学HMM:精讲第二课-学习问题(BW算法)

herosunly

AI 引航计划 内容合集

【布隆过滤】大数据+查重过滤+爬虫领域精选算法

cv君

AI 引航计划

自定义Vue脚手架模板之:Vue-Cli源码分析

Brave

源码 vue cli 10月月更

【设计模式】第一篇 - 组合模式

Brave

组合模式 10月月更

uni-app 在mac电脑连接安卓手机进行真机调试

达摩

uni-app app调试

为什么赛博朋克里总少不了日本元素?

脑极体

自我提升:高效能人士的7个习惯学习笔记

程序员架构进阶

自我管理 自我提升 10月月更

原创万字总结人工智能技术栈与学习路线 下集 进阶篇

cv君

AI 引航计划

浅谈人工智能的历史

Nydia

从头开始(概率)学HMM:精讲第三课-概率计算问题

herosunly

AI 引航计划 内容合集

linux之history使用技巧

入门小站

Linux

基于深度学习的医学图像分割(一)

cv君

AI 引航计划

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