2008年,Solomon Hykes 和 Kamel Founadi、Sebastien Pahl 共同创立了一家名为 DotCloud 的公司,目标是利用一种叫做容器的技术来创建他们称作是“大规模的创新工具”:任何人都可以使用的编程工具。
2010年2010年,DotCloud 获得了创业孵化器 Y Combinator 的支持,并开始吸引到一些投资,在接下来的3年中,dotCloud 内部孵化了一款名为 Docker 的产品。
2013年2013年3月, Docker 创始人 Solomon Hykes 在 PyCon 大会上的演讲中首次公开介绍了 Docker 这一产品。在2013年 PyCon 大会之后,Docker 的 "创新式镜像格式" 以及 "容器运行时" 迅速成为社区、客户和更广泛行业的实际标准和基石。Docker 的强大之处在于它通过可移植的形式和易于使用的工具在应用程序和基础设施之间创造了独立性。其结果是,Docker 将容器技术大众化,并解决了困扰数百万开发人员的 "matrix from hell" 问题,使容器技术成为主流。
2013年3月,DotCloud 发布了 Docker 的首个版本,并将 Docker 源码[1]进行开源。
2013年9月,红帽公司成为 Docker 的主要合作伙伴,利用 Docker 来驱动他的 OpenShift 云业务。随后,谷歌、亚马逊以及 DigitalOcean 也迅速的在其云服务平台提供了 Docker 的支持。主流云厂商的加入,加速 Docker 的发展进度。
2013年底,随着 Docker 技术的开源,此项技术能够将 Linux 容器中的应用代码打包并轻松的在服务器之间迁移,Docker 技术瞬时的风靡了全球,公司名称由 "DotCloud Inc" 更改为 "Docker Inc",并全力的主攻到 Docker 项目开发中。
成熟与标准化阶段2014年2014年3月,发布了0.9版本,并在此版本中用自己的libcontainer组件替换了LXC。
2014年6月,DockerCon 大会上 Docker 正式发布了 Docker 1.0 版本。这也意味着Docker的稳定性和可靠性已经基本满足了生产环境的运行需求。会议上同时发布 Docker Image 的镜像仓库 Docker Hub[2],并指出已经有超过14,000个 Docker 化的应用存储在他们的 "public registry" 中。
也是同样的2014年6月,基于谷歌内部强大的 Borg 系统而开发出来的 kubernetes 横空出世,刷新了人们对容器的理解。
2014年8月,Docker Inc 宣布将用于 PaaS 业务服务的 DotCloud 软件出售给德国柏林的 PaaS 服务厂商 CloudControl,自此以后,DotCloud 正式的和 Docker 分道扬镳了。
2014年12月,DockerConEU 大会上,Docker Swarm 和 Docker Machine 同时面世。Docker Swarm 是一个 Docker 集群管理工具,而 Docker Machine 是部署 Docker 主机的命令工具。
2014年12月里,CoreOS 宣布开发自家的容器运行环境 rkt 以及 appc 容器规范。
2015年2015年6月,由 Docker、IBM、微软、红帽及 Google 等厂商所组成的开放容器项目 OCP 联盟成立,该项目旨在建立软件容器的通用标准。OCP 成立于 Linux 基金会之下,其使命是使用户和公司能够继续创新和开发基于容器的解决方案,并充满信心地保护其先前的开发工作,并且不会造成行业分散。作为该计划的一部分,Docker 将捐赠其软件容器格式,运行时以及相关规范的代码。应用容器规范("appc")计划的领导者,包括创始成员 CoreOS,也将把他们的技术领导力和支持带到 OCP。
2015年8月,在 Docker 1.8 中引入 Docker Content Trust (DCT) 功能, 他是是基于 TUF 规范构建的一个具体应用(参考实现)。
2015年11月,基于 Docker Content Trust (DCT)功能 Notary v0.1 版本发布。这是一个安全签名和验证镜像内容的工具项目,并在2017年捐赠给CNCF。
2015年12月,Docker 官方发布 runC 工具[3],runC 是根据 OCI 标准生成的一个 cli 工具,一个轻量级的跨平台容器运行时命令行小工具,可以直接利用 libcontainer 运行容器,而无需通过 docker engine。runC 的目标是使标准容器在任何地方都可用。
2016年2016年6月的 DockerCon 上,Docker 宣布了 Open Container Initiative 的正式成立,简称 OCI 。OCI 意在业界一起合作,开发一个开放的、标准的容器格式和 Runtime。OCI 也属于 Linux 基金会的协作项目,一直秉承着开放的模式来管理,其 Roadmap[4] 在GitHub。
2016年,OCI 标准制定后,Docker 将 Containerd 独立拆分,并将其捐赠给了社区(后来捐赠给了 CNCF)。将这个组件分解为一个单独的项目,使得 Docker 将容器的管理功能移出 Docker 的核心引擎并移入一个单独的守护进程(即 Containerd)。这使得 Kubernetes 等编排工具可以直接使用 containerd,为后来的云原生生态奠定了基础。
在2016年,人们认识到容器技术本身的价值是在于容器的编排,而此时的 Docker 项目令人惊讶的放弃了 Swarm 项目,而是想将容器的编排和集群的管理功能添加到 Docker 项目当中。而 Kubernetes 却与 Docker 不同的是推进民主化架构,使得通过暴露 Kubernetes API 的方法,让更多的人来不断丰富 kubernetes 的插件。
2016年4月,独立软件供应商Windocks向Windows发布了Docker开源项目的移植版,支持Windows Server 2012 R2和Server 2016,以及SQL Server 2008的所有版本。这一年的6月8日,得益于Hyper-V技术,Docker可以在Windows 10(仅限专业版与企业版)上原生使用。
2017年2017年3月,17.03.0版本发布。从2013年3月推出 0.1.0 版本开始,到2017年2月 1.13.0 的版本都采用 x.y.z 的语义化版本控制(Semantic Versioning,简称 SemVer)形式。从2017年第一季度开始,Docker 版本号遵循 YY.MM-xx 格式。第一个版本为 17.03.0,其中 17代表年份(2017年),03 代表月份(3月),0:代表补丁号(Patch),从0开始。从这一版开始,Docker 正式分为 社区版(Docker CE) 和 企业版(Docker EE)。
2017年4月,于 Austin 举办的 DockerCon 上开源 Docker 项目正式命名为 Moby 项目。由于这次改名,GitHub 上的 docker/docker 库也被转移到了 moby/moby,并且拥有了项目自己的 Logo。其中 Moby 由社区维护,Docker-CE 由 Docker 公司维护,Docker-EE 是 Docker 公司闭源的商业产品。
商业化运营阶段2018年2018年3月 Docker 公司创始人 Solomon Hykes 在 Docker 博客[5] 宣布已正式从 Docker 公司离职,不再担任公司的日常运作工作。Solomon Hykes 表示,他未来的身份将是 Docker 的董事会成员、主要股东,以及 Docker 维护者,但不再负责担任公司的日常工作。
2018年4月:随着Docker EE2.0 的推出,Windows 和 Mac 版的 Docker Desktop 同步发布,成为了开发者在本地机器上使用 Docker 的首选工具。
2018年11月,在Docker 18.09版本中,首次引入了BuildKit作为可选构建引擎。
2019年2019年容器市场基本趋于稳定,一切都向着优化改进方向发展。Docker 公司是底层容器引擎及运行时的。容器的编排进过几轮的激烈竞争,基本是 GOOGLE 的 Kubernetes 一家独大。
2020年2020年12月,Kubernetes 决定在 v1.20 版本之后将废弃 Docker 作为容器运行时。Docker 作为底层运行时被废弃,转而使用为 Kubernetes 创建的 Container Runtime Interface(CRI)的运行时,Docker 生成的镜像将继续在你的集群中与所有运行时一起工作。这或许标志这 Docker 的巅峰已经到了。
2020年12月:Docker Engine 20.10 发布,引入了对 Compose v2 的支持(基于 Go 语言重写,性能更好)。
2021年2021年8月:Docker Desktop 针对企业用户开始收费(之前是免费的)。这一政策变化促使部分企业用户寻找替代方案(如 Podman),但也帮助 Docker Inc. 实现了商业变现。
2021年底:Compose v2 成为 Docker Desktop 的默认工具,推荐使用 docker compose 命令(无破折号)。
2023年2023年4月,Docker入选全球独角兽榜,以145亿人民币的企业估值入选《2023·胡润全球独角兽榜》,排名488位,证明了其在云原生领域的商业价值。
2025年2025年5月,Docker v28.2.2 发布,该版本重点修复了镜像存储的回归问题以及 iptables 网络规则的稳定性,旨在提升构建和运行时的体验。
2025年10月,Docker Hub 全面瘫痪,核心服务全线中断,Docker 官方服务遭遇重大故障,导致 Docker Hub Registry、身份认证服务、网站、计费系统等几乎所有核心服务全面中断。官方承认是其合作的云服务提供商出现了底层故障。这次中断持续了数小时,全球范围内的开发和部署流程因此陷入停滞。
参考• https://docs.docker.com/engine/release-notes/
• https://blog.csdn.net/thollych/article/details/102717701
• https://www.linuxidc.com/Linux/2018-09/153977.htm
• https://www.opencontainers.org/news
• https://baike.baidu.com/item/%20Docker/13344470
引用链接[1] Docker 源码: https://gitea.cncfstack.com/docker/[2] Docker Hub: http://hub.docker.com/[3] runC 工具: https://github.com/opencontainers/runc[4] Roadmap: https://github.com/opencontainers/specs/blob/master/ROADMAP.md[5] Docker 博客: https://www.docker.com/blog/au-revoir/