Docker EE 2.0 助力 Kubernetes,打造安全的供应链体系

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
简介: 对于那些还没有尝试过 Docker EE 2.0 版本的用户来说,这篇文章将重点介绍 Docker EE 2.0 版本如何为 Kubernetes 提供安全的供应链。

screenshot

本文首发自“Docker公司”公众号(ID:docker-cn)
编译丨小东
每周一、三、五 与您不见不散!


上周,KubeCon 欧洲大会在哥本哈根的成功举办,让我们来回顾那些在 Docker 和 Kubernetes 读者中最受欢迎的帖子吧。对于那些还没有尝试过 Docker EE 2.0 版本的用户来说,这篇文章将重点介绍 Docker EE 2.0 版本如何为 Kubernetes 提供安全的供应链。


上个月,Docker 揭晓了 Docker 企业版(EE)2.0 版本 —— 唯一的企业级容器平台(更多有关 Docker EE 2.0 版本的信息请参考下列文章),它集成了 Kubernetes 编排,可以让其与 Swarm 并行运行,并为运行在本地或云端的遗留和新的应用程序提供统一的容器平台支持。对于正在探索 Kubernetes 或正在将其部署到生产环境的组织来说,Docker EE 为容器化应用程序的整个生命周期提供了完整的安全保障,在Kubernetes部署工作负载之前提供额外的安全层,并在应用程序运行过程中提供持续的保护。


什么是软件供应链?

当您从零售商店购买产品时,其实是由一条完整的供应链支撑,即从原材料到制造商,再由制造商加工成产品后到零售商店,最后再到您的手中。同样的,软件也有一条完整的供应链,它将应用程序的代码从开发者笔记本上面迁移到生产环境中。

screenshot

每家公司的软件供应链可能都略有不同:一些选择外包软件开发、一些采用持续集成和持续交付流程、一些采用跨多个云端部署生产应用程序,还有一些在本地部署。无论软件供应链包含了什么内容,Docker EE 都提供了一整套解决方案,确保应用程序在使用 Kubernetes 和 Swarm 的所有步骤时仍然可信和安全。

在本文中,我们将更深入地了解这个解决方案中的一个重要部分 —— 即镜像扫描和基于策略的镜像提升。


安全、自动化的Kubernetes 工作流程

在应用程序部署到生产环境之前,组织通常希望知道这个应用程序已经没有任何已知的漏洞,这些漏洞通常来自于该软件之前的版本或未打补丁的版本。就算对于大型组织来说,为他们运行中的每个应用程序(并且可能受到新漏洞的影响)保留一份完整的漏洞记录也是一件很困难的事。

而 Docker EE 提供了镜像安全扫描功能,该功能可以帮助组织在应用程序部署到生产环境之前识别已知漏洞,并在新漏洞影响到现有应用程序时向您提示。该功能是针对 NIST 发布的已知漏洞列表来为您的镜像执行一个二进制级别的镜像扫描。如下图所示,该功能可以彻底扫描镜像的每个层,并提供工作负载的详细信息。

screenshot

Docker EE 还可以定义策略来实现镜像在镜像仓库之间的自动化迁移。这些镜像提升策略还可以与镜像扫描的结果结合在一起,从而创建一个安全的、自动化的工作流程来保障镜像迁移到生产环境中。


举个例子,开发人员正在开发一个新的 Kubernetes 项目,该项目可以访问“dev”镜像仓库,并且可以在该镜像仓库上传和下载镜像。“dev”镜像仓库设置了镜像扫描功能,以便自动扫描所有上传到该镜像仓库的镜像。当开发人员准备将新项目的镜像投入到生产环境时,他们就会在镜像中添加如“最新”之类的特定标签。同时他们会为镜像仓库设置镜像提升策略,该策略是如果镜像具有“最新”标签且没有严重漏洞时,该镜像就可以自动复制或提升到“QA”镜像仓库中。

screenshot

在此示例中,只有QA团队才能访问QA文件夹,从而限制了访问,确保只对那些有需求的人开放权限。该策略还可确保开发人员在将漏洞传递给QA团队之前修复漏洞。


结合这些 Docker EE 的功能,组织可以:

  • 在镜像仓库之间实现镜像大规模的自动化迁移;
  • 在开发的特定阶段进行安全扫描;
  • 防止将有已知漏洞的应用程序部署到生产环境中;

限制对敏感镜像仓库(如“生产”镜像仓库)的访问,只对有需要人开放权限,同时通过定义适当的策略来消除流程中的瓶颈问题;
这些都是把应用程序部署到 Kubernetes 生产环境之前所产生的关键工作流程。现在通过Docker EE,您就可以得到一条完整、安全的软件供应链。更多 Kubernetes 安全供应链的相关信息,请从下列渠道观看完整视频:

Docker 官方入口:http://t.cn/R3b8vy5

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
8天前
|
Kubernetes 监控 开发者
掌握容器化:Docker与Kubernetes的最佳实践
【10月更文挑战第26天】本文深入探讨了Docker和Kubernetes的最佳实践,涵盖Dockerfile优化、数据卷管理、网络配置、Pod设计、服务发现与负载均衡、声明式更新等内容。同时介绍了容器化现有应用、自动化部署、监控与日志等开发技巧,以及Docker Compose和Helm等实用工具。旨在帮助开发者提高开发效率和系统稳定性,构建现代、高效、可扩展的应用。
|
6天前
|
JavaScript 持续交付 Docker
解锁新技能:Docker容器化部署在微服务架构中的应用
【10月更文挑战第29天】在数字化转型中,微服务架构因灵活性和可扩展性成为企业首选。Docker容器化技术为微服务的部署和管理带来革命性变化。本文探讨Docker在微服务架构中的应用,包括隔离性、可移植性、扩展性、版本控制等方面,并提供代码示例。
32 1
|
14天前
|
Kubernetes 负载均衡 Docker
构建高效微服务架构:Docker与Kubernetes的完美搭档
本文介绍了Docker和Kubernetes在构建高效微服务架构中的应用,涵盖基本概念、在微服务架构中的作用及其实现方法。通过具体实例,如用户服务、商品服务和订单服务,展示了如何利用Docker和Kubernetes实现服务的打包、部署、扩展及管理,确保微服务架构的稳定性和可靠性。
58 7
|
13天前
|
Kubernetes 负载均衡 Docker
构建高效微服务架构:Docker与Kubernetes的完美搭档
【10月更文挑战第22天】随着云计算和容器技术的快速发展,微服务架构逐渐成为现代企业级应用的首选架构。微服务架构将一个大型应用程序拆分为多个小型、独立的服务,每个服务负责完成一个特定的功能。这种架构具有灵活性、可扩展性和易于维护的特点。在构建微服务架构时,Docker和Kubernetes是两个不可或缺的工具,它们可以完美搭档,为微服务架构提供高效的支持。本文将从三个方面探讨Docker和Kubernetes在构建高效微服务架构中的应用:一是Docker和Kubernetes的基本概念;二是它们在微服务架构中的作用;三是通过实例讲解如何使用Docker和Kubernetes构建微服务架构。
50 6
|
13天前
|
Kubernetes Cloud Native 开发者
云原生技术入门:Kubernetes和Docker的协作之旅
【10月更文挑战第22天】在数字化转型的浪潮中,云原生技术成为推动企业创新的重要力量。本文旨在通过浅显易懂的语言,引领读者步入云原生的世界,着重介绍Kubernetes和Docker如何携手打造弹性、可扩展的云环境。我们将从基础概念入手,逐步深入到它们在实际场景中的应用,以及如何简化部署和管理过程。文章不仅为初学者提供入门指南,还为有一定基础的开发者提供实践参考,共同探索云原生技术的无限可能。
22 3
|
17天前
|
Kubernetes 持续交付 Docker
探索DevOps实践:利用Docker与Kubernetes实现微服务架构的自动化部署
【10月更文挑战第18天】探索DevOps实践:利用Docker与Kubernetes实现微服务架构的自动化部署
61 2
|
1月前
|
Kubernetes 持续交付 Docker
利用 Docker 和 Kubernetes 实现微服务部署
【10月更文挑战第2天】利用 Docker 和 Kubernetes 实现微服务部署
|
3月前
|
Kubernetes Devops 持续交付
DevOps实践:使用Docker和Kubernetes实现持续集成和部署网络安全的守护盾:加密技术与安全意识的重要性
【8月更文挑战第27天】本文将引导读者理解并应用DevOps的核心理念,通过Docker和Kubernetes的实战案例,深入探讨如何在现代软件开发中实现自动化的持续集成和部署。文章不仅提供理论知识,还结合真实示例,旨在帮助开发者提升效率,优化工作流程。
|
开发框架 Kubernetes 负载均衡
宝塔面板+Rancher+阿里云镜像仓库+Docker + Kubernete s,添加集群、部署 web 应用
前言: 本文使用 Centos 7.x 进行操作,Rancher 官方推荐使用 Ubuntu。 Docker 对内核要求 大于 3.10,你可以使用 uname -r 检测系统内容版本。 通过 Rancher,可以很方便地对多个主机进行管理,实现负载均匀、集群、分布式构架、故障转移、状态监控等。
3004 0
宝塔面板+Rancher+阿里云镜像仓库+Docker + Kubernete s,添加集群、部署 web 应用
|
JSON Kubernetes 应用服务中间件
【Docker】Kubernetes集群 yaml部署应用样例
非常简单的yaml配置~,对配置参数标注了说明
1597 0
【Docker】Kubernetes集群 yaml部署应用样例