At last year's DockerCon, Docker launched its Docker Build remote build service and today it is taking this a step further with the launch of Docker Build Cloud, a fully managed service that, you guessed it, allows development teams to offload their image builds to the cloud. Docker promises that its new service can speed up build times by up to 39x.
"Every week, millions of developers run 'docker build [x]," Giri Sreenivas, Docker's chief product officer, told me, referring to the standard command developers use to kick off their Docker builds. "We have an opportunity to give them a way to get time back without really changing their workflows and their tools. And we think that's a big deal. There's no additional cognitive overload associated with switching to a new tool. There's no context switching associated with using another company's tool and, frankly, it's something that we heard from customers for years: We would love to be able to have faster build times. What can you do to help us with faster build times?'"
Image Credits: Docker
Sreenivas, who joined Docker last April, told me that this fits in with a wider discussion the Docker team had last year around collaborative and cloud-connected tools. He noted that historically, the Docker Desktop experience always had a "single-player focus." Yet Docker isn't looking to bring the entire process into the cloud. Instead, the company is looking at a local+cloud hybrid strategy, he explained. "How can you bring the power of the cloud to local development? There are other companies also taking a look at this, but I think we have a very unique position because of how widely used and widely deployed our toolchain is.”
Indeed, Docker's real differentiator here may indeed be that it can offer developers faster builds in the cloud within the existing set of tools that they are already familiar with. As Sreenivas explained, developers typically engage with Docker's tools in two places: the inner loop, where they are coding, testing and debugging their code, and then as part of the continuous integration process. "Docker builds are being run in both places, so let's go ahead and make sure we can support accelerating builds in either of those locations," he said.
Image Credits: Docker
Docker will give all of its customers a number of free minutes to run these remote builds based on their subscription tier -- including its free users on the Docker Personal plan. Developers can then buy Docker Build Cloud plans starting at $5 per seat/month for 200 build minutes, with extra time on top of that costing $0.05/minute.
Docker can achieve some of the build speedups by smartly caching a lot of the data and looking ahead. The company plans to provide developers with more transparency around how that cache is being utilized and potentially giving users the ability to select a different cache size (or maybe opt for running their builds on larger hardware, too). Sreenivas also noted that Docker plans to add additional reporting features that will make it easier for users to see how much time they saved by using these remote builds.
What's maybe more important, though, is that Docker is now also looking at how it can ensure that its different products work better together. That could mean, for example, that Docker Cloud Build would work in tandem with Docker Scout, its service for finding vulnerable packages in a container, and then create a more secure build that developers could switch over to.