调查背景

公司排查Docker是否有未经授权,就商用Docker特定版本的侵权风险

Docker简介

Docker 是一个完整的容器化平台,它包含多个工具和技术,用于开发、部署和运行容器化应用程序

Docker 提供了从开发到生产的一体化工作流,帮助开发者和运维团队构建和管理容器。

目前,全球有55%的专业开发人员在使用Docker!

Docker 包括:

  • Docker Engine:用于构建和运行容器的核心引擎。

Docker Engine 是 Docker 平台的核心组件,专注于容器的运行时管理。它具体包括以下部分:

  1. Docker Daemon (dockerd) :核心服务,负责实际的容器操作。

  2. Docker CLI (docker) :命令行工具,用于与 Daemon 交互。

  3. REST API:允许通过编程方式与 Daemon 交互。

  4. Container Runtime:底层运行时,用于执行和隔离容器(如 containerd)。

  • Docker CLI:与 Docker Daemon 交互的命令行工具。

  • Docker Compose:用于定义和管理多容器应用的工具。

  • Docker Hub:公共镜像仓库,用于存储和分发容器镜像。

  • Docker Desktop:开发者友好的 GUI 工具,包含 Docker Engine 和其他工具。

  • Docker Swarm

    • Docker 的内置容器编排工具,用于管理和部署分布式集群。

    • 提供高可用性、负载均衡和容器调度功能。

    • 使用简单,直接通过 Docker CLI 管理 Swarm 集群。

等。

Docker版本

Docker分为两个版本

  • CE(Community Edition)社区版

  • EE(Enterprise Edition)企业版

Docker-CE是docker公司维护的开源项目,是一个基于Moby项目的免费的容器产品,遵守Apache License 2.0协议

https://github.com/docker-archive/docker-ce

Docker-EE是docker公司维护的闭源产品,是Docker公司的商业产品

Apache License 2.0协议具体内容参考本文

http://renew7.fun:8090/archives/apache-license

政治背景

8月13日,Docker 公司更新了网站服务协议,条款申明,禁止禁运国家和被列入「美国实体清单」的组织和个人使用带有该服务协议链接的 Docker 网站和所有相关网站。这一更新协议迅速引起了业内的广泛关注与讨论,一时间有关“ Docker 被禁止使用”的讨论此起彼伏。

实际受限的产品与服务是什么?

结合1.1、1.2 和 2.5 条款,可以明确的是:

Docker 公司禁止被列入“美国实体清单”名单中的企业使用 docker.inc 网站提供的Docker 商业版 Docker-EE 及 Docker 其他服务,如 Docker Hub

免费用户在使用 Docker Hub 时会在镜像数量、pull/push频次等方面受到限制,比如免费账号6个小时内限制下载200次等。虽然企业内部基本会部署自身的私有镜像仓库,但在构建或使用基础镜像时,可能仍然会受到此限制。

业内广泛使用的 Docker 开源容器引擎 Moby,因其采用了Apache License 2.0协议,并不会受到此影响

即开源版 Docker-CE 不受此影响

Docker Desktop不再允许商用背景

2021 年 8 月 31日,Docker 宣布 Docker Desktop 将只免费提供给小型企业、个人、教育和非商业开源项目使用。对于其他用例,需要付费订阅。

https://www.docker.com/products/docker-desktop/

也就是说,对于小型企业(少于 250 名员工且年收入少于 1000 万美元)、个人使用、教育和非商业开源项目,它仍然免费。

但是对于员工数量超过250名、或收入超过1000万美元的公司,必须使用付费订阅。

每个员工每月至少 5 美元

针对此次变动,Docker 官方主要给出了两点理由,Docker的CEO Scott Johnston表示:

1.现在公司想要解决软件供应链上存在的安全隐患

2.公司需要开拓一个可行的商业模式


总结

  1. 由于【东软集团】不属于被列入【美国实体清单】的中国企业,所以不会被完全禁止使用Docker的服务群

  2. 由于【东软集团】不符合【少于 250 名员工且年收入少于 1000 万美元】、因此禁止免费使用【Docker Desktop】这个单独安装的桌面APP,需公司按人头统一采购

  3. Docker_EE作为闭源的商业产品,在公司未统一采购的背景下,禁止私自使用,或部署破解版

  4. Docker_CE作为免费的指令集开源社区版容器,遵守Apache License 2.0协议,完全允许商用

参考文章

https://juejin.cn/post/7444571603390414911https://cloud.tencent.com/developer/article/1877308

https://zhuanlan.zhihu.com/p/405711865

https://blog.51cto.com/u_14457/9078939