Docker Engine v20.10.0 发布

近日,Docker v20.10.0 正式发布了,这是自 K8s 宣布将弃用 Docker 容器进行时之后发布的首个 Docker 版本。本次更新内容包括:

弃用、移除

  • 当 docker 从不支持 digest-by-digest-docker/cli 的不兼容注册表进行拉取时,出现警告和弃用通知#2872
  • 未经身份验证的 TCP 访问 Moby/Moby 时将出现更严格的警告和弃用通知#41285
  • 弃用 KernelMemory(docker run --kernel-memory#41254 #2652
  • 弃用 aufs 存储驱动程序 #1484
  • 不推荐使用外部 K/V 存储的主机发现和覆盖网络 #40614 #40510
  • 弃用 Dockerfile 旧版 'ENV name value' 语法,改为使用 ENV name=value#2743
  • 删除 API v1.41 及更高版本的不推荐使用的 “filter” 参数#40491
  • 在 Push 时禁用 manifest v2 schema 1 #41295
  • 删除 “docker engine” 子命令#2207
  • 从 “dab” 文件删除实验性的 “deploy” #2216
  • 删除已弃用的 docker search --automated 和 ``--stars` flag#2338
  • 不再允许在引擎标签中保留命名空间#2326

API

  • 将 API 版本更新为 v1.41
  • 去掉 metrics API 的“实验性”标签 #40427
  • 添加 one-shot 选项以不启动统计信息#40478
  • 将操作系统版本信息添加到系统信息的 API(/info)#38349
  • 将 DefaultAddressPools 添加到 docker info #40714
  • 在服务上添加对 PidsLimit 的 API 支持#39882
详细信息请查看:https://docs.docker.com/engine/release-notes/

原文链接:https://www.oschina.net/news/123134/docker-20-10-0-released

Docker Desktop v3.0.0 正式发布

近日,Docker Desktop v3.0.0 正式发布。Docker Desktop 是一个支持 Windows 和 MAC 系统的完整桌面开发环境,包括 Docker App,开发人员工具,Kubernetes 以及与最新版本的 Docker Engine。Docker Desktop 可以让开发者利用认证的镜像和模板以及自选语言和工具进行快速的容器集群自动构建,利用 Docker Hub 将开发环境部署到安全的存储库,进行持续集成和安全协作。

v3.0.0 主要更新内容包括:

  • Docker 仪表板,可以让用户在一个 UI 界面中访问容器、应用程序和远程镜像;
  • 适用于 Windows 10 Home 的 Docker 桌面;
  • 针对 Windows 上的 WSL 2 后端提供了更本地化的集成并大大提高了性能;
  • 支持 Azure 容器实例和 Amazon Elastic Container Service ;
  • 与 Snyk 建立合作伙伴关系,以安全扫描本地镜像并显示来自 Docker Hub 的镜像扫描结果;
  • Windows 和 Mac 上都加入了新的文件系统;
  • 针对 Mac 的新款 CPU 进行大量的改进;
  • 自动增量更新:现在版本更新只需要安装增量软件包(几十M),并自动在后台完成。
  • 现在 Docker Pro 或 Team 的付费订阅用户可获得 Docker Desktop 的全面支持。
详细信息可参阅:https://www.docker.com/blog/docker-desktop-3-0-0-smaller-faster-releases/

原文链接:https://www.oschina.net/news/123359/docker-desktop-3-0-0-released

Lens v4.0 正式发布

Lens 是一个开源的管理 Kubernetes 集群的 IDE,支持 MacOS、Windows 和 Linux。通过 Lens,我们可以很方便地管理多个 Kubernetes 集群。2020 年 3 月,Lens 正式开源,近日 Lens v4.0 正式发布。新版本的亮点是 Extensions API,它允许扩展直接插入 Lens UI,添加了可视化功能以及集成了与 Kubernetes 相关的技术和服务。以下是主要功能点:

Lens 扩展

Lens 4.0具有 Extensions API,社区和云原生生态系统供应商可以使用它们来开发 Lens Extension。组织可以利用 Extension API 来开发自己的专有功能,以其特定信息和功能来丰富 Lens UI。Lens Extension 以 TypeScript 开发,并打包为 NPM 软件包。

当前可用扩展列表:https://github.com/lensapp/lens-extensions

日志界面改进

告别了之前的模态对话框(modal dialog),现在是大规模改进后的日志界面!这以前,日志接口并不实用,因为它是作为模态对话框实现的,现在不会由于检查日志而中断工作。另外,新版本还增加了颜色、搜索和许多其他改进的支持。在后续版本中,将添加过滤功能以及其他一些增强功能,以进一步提高开发人员的满意度。

Lens v4.0是一个具有纪念意义的版本,其他具体发布内容可参阅:https://github.com/lensapp/lens/releases/tag/v4.0.0

4Kubernetes v1.21 影子发布团队招募

虽然 v1.21 发布日期尚未最终确定,但大致在会第一季度期间,也就是 2021 年 3、4 月份。近日,Kubernetes v1.21 发布团队宣布开始招收“影子(Shadow)”。

发布团为每个发布角色招募助手,以培训新的发布团队负责人,他们需要处理发布负责人可能无法涵盖的任务,分享有关发布过程的知识,并帮助贡献者扩大知识范围和参与。这些助手在发布团队中被称为“影子(Shadow)”,相当于在其他团队类似实习生的职位。

影子成员需要在第一周了解相关资料,重复参与发布团队;在第二到八周,开发周期的主要时期,需要学习并承担相应任务,包括参与发布团队会议,发送报告等;在第九到十三周,最忙的一个阶段,需要轮流参加会议,每天进行检查更新状态等。

具体要求:https://github.com/kubernetes/sig-release/blob/master/release-team/shadows.md

这里需要注意的是,成为发布团队的影子成员需要较多的时间,对于亚洲时区的开发者可能不是特别友好,所以参与的成本会相对较高,不过从中也能学习到 Kubernetes 的发布管理流程。

申请地址:https://docs.google.com/forms/d/e/1FAIpQLSckO4PpyNyoej4Fy0TmhNqqn3jXesAtK2lZH8JNzPKFkH5JPw/viewform

2021 年值得关注的 4 个 K8s 项目

Kubernetes 为 IT 组织带来了很多价值,可以在生产环境中大规模部署。这种价值很大一部分来自参与 Kubernetes 社区的个人和组织的努力。其中,有很多与 Kubernetes 一起互补的开源项目,帮助 kubernetes 变得更加强大,这里介绍了 4 个值得关注的 Kubernetes 相关项目。

Quarkus

Quarkus 是为 GraalVM 和 HotSpot 量身定制的 Kubernetes 原生 Java 框架。Quarkus 的目标是使 Java 成为 Kubernetes 和无服务器环境中的领先平台,同时为开发人员提供统一的反应式和命令式编程模型,以最佳地解决广泛的分布式应用程序体系结构。

OpenTelemetry

最近 Kubecon 的热门话题之一是可观察性,该领域的两个热门项目是 Prometheus 和 Jaeger。OpenTelemetry 是该领域最近的一个项目,由 OpenCensus 和 OpenTracing 在 2019 年合并而成,它是一组标准、库、SDK 和代理,提供了完整的应用程序级可观察性。

Argo CD 和 Keptn

Argo CD 是声明性的 GitOps 工具,能确保正确的部署状态反映在活动集群中,并对其进行连续监视,同时采取任何必要措施使所需状态和实际状态保持一致。Keptn 可以使用 Argo CD 的部署功能或自己的部署功能,侧重于代码的测试、评估和升级。

原文链接:https://enterprisersproject.com/article/2020/12/kubernetes-5-open-source-projects-to-watch-2021

本周 K8s 开源项目推荐

Couler

  • Couler 旨在提供一个统一的界面,用于在不同的工作流引擎(例如 Argo Workflows、Tekton Pipelines)上构建和管理工作流。
  • github.com/couler-proj/couler

kubei

  • 这是一个漏洞扫描和 CIS Docker 基准测试工具。
  • github.com/Portshift/Kubei

kubectl-fuzzy

  • 它用于 kubectl 模糊和部分字符串搜索。
  • github.com/d-kuro/kubectl-fuzzy

tobs

  • 它能将完整的可观察性堆栈简单地安装到 Kubernetes 集群中。
  • github.com/timescale/tobs

KubeInit

  • 它可以自动化部署和配置多个 Kubernetes 发行版。
  • github.com/Kubeinit/kubeinit

terraform-kubestack

  • Kubestack是一个基于Terraform和Kustomize的托管Kubernetes服务的Gitops框架。
  • github.com/kbst/terraform-kubestack