写点什么

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

评论

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

Apache Flink 是什么?

Apache Flink

flink

static关键字真能提高Bean的优先级吗?答:真能

YourBatman

spring springboot SpringCloud 极客大学架构师训练营 Spring Bean

CAP原则

熊威

CAP 原理

Z冰红茶

学会使用Vue JSX,一车老干妈都是你的

前端有的玩

Java Vue 大前端 技巧 React

架构师训练营第六周总结

sunnywhy

架构师训练营第六周

大丁💸💵💴💶🚀🐟

蟒周刊-429-Python 3.8.4 可用ed

ZoomQuiet大妈

Python 大妈 蟒周刊

架构师训练营第六周作业

sunnywhy

CAP

Kiroro

Doris临时失效处理过程的UML时序图

周冬辉

我学会了用Python预测股票价格

博文视点Broadview

Python 读书笔记 算法 数据分析

程序员的眼界真的不要,也不能只局限于技术

非著名程序员

极客时间 程序员 提升认知

GaussDB for DWS:内存自适应控制技术总结

华为云开发者联盟

大数据 数据湖 内存管理 sql 华为云

NOSQL - 第六周总结

孙志平

学习总结 - 第 6 周

饶军

架构师训练营第六周作业

王铭铭

图解:有向环、拓扑排序与Kosaraju算法

淡蓝色

Java 数据结构 算法

NOSQL - 第六周作业

孙志平

Doris 临时失效 UML 时序图(训练营第六周)

看山是山

Doris

CAP 原理及Doris 临时失效的处理过程

Acker飏

极客大学架构师训练营 CAP

猿灯塔:spring Boot Starter开发及源码刨析(六)

猿灯塔

week6 学习总结 Nosql

Z冰红茶

探秘 Spring 的 PropertyEditor

CoderLi

Java spring 后台

MySQL 高可用和分布式数据库(训练营第六课)

看山是山

zookeeper CAP 主从复制 主主复制 MySQL 高可用

总结

Kiroro

最右JS2Flutter框架——渲染机制(二)

刘剑

flutter 大前端 跨平台 探索与实践

架构师训练营第6周作业

饶军

「1.4万字」玩转前端 Video 播放器 | 多图预警

阿宝哥

大前端 流媒体 Video播放器 HLS

一个成都程序猿写于离开北京一周年与26岁生日的这一天

why技术

生活 程序人生 北漂 成都

架构师训练营」第 6 周作业

edd

极客大学架构师训练营

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