How the Docker Business is Changing to Serve Millions of Developers, Part 1: Repository

How the Docker Business is Changing to Serve Millions of Developers, Part 1: Repository

In this series of articles, we'll take a closer look at why and how our Terms of Service have recently changed. This article will detail the inactive image retention policy and how it will impact development teams using Docker Hub to manage container images. In the second part, we will focus on the new policy to limit the frequency of image downloads.

Docker's goal is to enable developers around the world to turn their ideas into reality by simplifying the application development process. With over 6.5 million registered developers using Docker today, we want to expand our business to the tens of millions of developers who are just now learning about Docker. The cornerstone of our mission is to offer free tools and services funded by our paid subscription services.

Detailed analysis of Docker Hub images

Delivering applications in a portable, secure, and resource-efficient way requires tools and services to store and share securely for your development team. Today, Docker is proud to offer the world's largest registry for container images, Docker Hub, used by over 6.5 million developers worldwide. Docker Hub currently hosts over 15PB of container images, covering everything from the world's most popular in-memory databases to event streaming platforms, curated and trusted official Docker images, and over 150 million images built by by the Docker community.

According to a report generated by our internal analytics tools, out of 15 PB of images stored on Docker Hub, more than 10PB of the images have been unused for more than six months. We found, by digging deeper, that over 4.5PB of these inactive images are associated with free accounts. Many of these images were used for a short time, including images obtained from CI pipelines with Docker Hub configured to ignore deletion of temporary images.

With the amount of data at rest sitting idle on Docker Hub, the team was faced with a difficult question: how to limit the amount of data that Docker pays for on a monthly basis without impacting other Docker customers?

The main principles adopted to solve the problem were as follows:

  • Continue to provide a complete set of free tools and services that developers, including those working on open source projects, can use to build, share, and run applications.
  • Making sure Docker can scale to meet the demands of new developers while capping the current unlimited storage costs, one of the most significant operational costs for Docker Hub.

Help developers manage inactive images

Several updates have been made to help Docker scale its infrastructure cost-effectively to support free services for our growing user base. To start, a new inactive image retention policy has been introduced whereby all inactive images hosted on free accounts will be deleted after six months. In addition, Docker will provide a toolkit, in the form of a UI or API, to help users better manage their images. Together, these changes will make it easier for developers to clean up inactive images, as well as the ability to cost-effectively scale their Docker infrastructure.

In accordance with the new policy, from November 1, 2020, images hosted in the free Docker Hub repositories, the manifest of which has not been updated for the last six months, will be deleted. This policy does not apply to images stored on paid Docker Hub accounts or accounts of verified Docker image publishers, or official Docker images.

  • Example 1: Molly, a free account user, uploaded an image to Docker Hub on January 1, 2019, labeled molly/hello-world:v1. This image has never been downloaded since it was posted. This labeled image will be considered inactive starting November 1, 2020, when the new policy goes into effect. The image and any label pointing to it will be removed on November 1, 2020.
  • Example 2: Molly has an unlabeled image molly/myapp@sha256:c0ffee, uploaded August 1, 2018. The last download was on August 1, 2020. This image is considered active and will not be removed on November 1, 2020.

Minimizing impact on the developer community

For free accounts, Docker offers free storage of inactive images for six months. For those who need to store inactive images, Docker offers unlimited image storage as a feature. Pro or Team plans.

Additionally, Docker will offer a set of tools and services to help developers easily view and manage their images, including future product updates on Docker Hub available in the coming months:

Finally, as part of our support for the open source community, we will be providing new pricing plans for open source until November 1st. To apply, please fill out the form here.

For more information about the latest changes to the terms of service, please visit FAQ.

Keep an eye out for emails regarding any expiring images, or upgrade to Pro or Team plans for unlimited inactive image storage.

While we try to minimize the impact on developers, you may have unresolved issues or use cases. As always, we welcome feedback and questions. here.

PS Considering that the Docker technology does not lose its relevance, as its creators assure, it would not be out of place to study this technology from and to. Moreover, it is always in favor when you work out with Kubernetes. If you want to get acquainted with best practice cases in order to understand where and how best to use Docker, I recommend comprehensive video course on Docker, in which we will analyze all its tools. Full course syllabus on the course page.

Source: habr.com

Add a comment