What is Docker and why should I care?
This week, our own André Rømcke, vice president of engineering at eZ Systems, has made the trek from Lyon, France to speak at SymfonyLive New York. On October 9th, André will be discussing a rapidly growing technology that could have a significant impact on the tech industry: Docker. His session, titled, "Dockerizing your Symfony Application," is scheduled for 10:45 - 11:25 a.m. and is under Track A.
If you're a developer or work in IT, you've likely heard of Docker. The two-year old open source technology has grown exponentially during its existence. And now, it's beginning to turn heads in even the most regulated industries. But what does Docker have to do with the eZ Publish Platform? Nothing yet. But we are keenly aware of the technology -- even testing the technology internally -- and are beginning to discuss the potential benefits that could exist with a "Dockerized" eZ Publish application, which happens to be a advance Symfony application on it's own.
But first, let's explore what Docker actually is for those that are unfamiliar. "Docker is an open platform for developers and sysadmins to build, ship, and run distributed applications," according to the Docker website. The technology consists of two tools, the Docker Engine and the Docker Hub. The Docker Engine is a, "portable, lightweight runtime and packaging tool," while Docker Hub is a, "cloud service for sharing applications and automating workflows."
The technology is particularly appealing for developers because it is now easier than ever to make sure you develop, test and deploy using the same environment as your colleagues, resulting in less issues caused by differences or missing libraries. Docker also offers developers the flexibility to quickly run their apps anywhere, whether its on laptops, VMs or QA servers. More simply put, "Docker helps developers build and ship higher-quality applications, faster." Sysadmins are finding the technology useful as well, because of the ability to standardize development environments among other reasons. "Docker helps sysadmins deploy and run any app on any infrastructure, quickly and reliably."
Docker seems to be on the same disruption path as GitHUB, which shook the source control systems, or more lately, how composer "revolutionized" the way we deploy components of a PHP and Symfony application.
On the business side, the benefits may be huge. By simplifying the way we deploy apps and creating more manageable environments, Docker can streamline all related processes, potentially offering a boost in productivity, reducing risks and reducing costs.
eZ is interested in the potential to easily ship the eZ Publish Platform in a "Dockerized" format. This could drastically simplify the implementation and installation of the eZ Platform. By "Dockerizing" the eZ Publish Platform, we can better ensure that each version of the eZ Publish Platform that our customers receive are exactly the same, reducing bugs and shoring up inconsistencies. Docker can streamline and simplify the delivery of eZ updates too. By "Dockerizing" eZ, customers may have the ability to update to the latest version of eZ without having to make any changes to existing customizations on the software. Updates to the base eZ image will only need a rebuild of the customizations, which are always applied cleanly on top, leaving everything intact and ready for deployment.
To learn more about Docker, check out their website.
To learn more about the future of eZ and Docker together, attend André Rømcke's session at SymfonyLive, New York. Directions to the venue can be found here.