Save to My DOJO
If you’ve been a regular follower of the blog for the last several months, you likely know that we’ve been working on this extensive series on containers. Not only are we covering the concept and particulars of containerization technologies, but we’re also doing so through the prism of an MSP looking to offer container services to their customers. We’ve covered some more abstract/informational type of concepts such as suggested container service pricing, and serverless vs. containers. Additionally, we’ve focused on more practical howtos as well such as how to run a Linux container on Windows Server, and more!
In today’s post, I want to talk a little bit about Docker Community Edition vs. Enterprise Edition. I’ve been seeing this question come up quite a bit lately, and many MSPs are wondering what option is best for their needs. Before we get into that, let’s see where we’ve been thus far in this series
The Definitive Guide to Containers for MSPs
Part 1 – What are Containers?
Part 3 – Introduction to Docker
Part 4 – 4 Pro Tips for Working with Docker
Part 7 – Docker Container Networking – Part 1
Part 8 – How to Setup a Linux Container Host
Part 11 – Docker Container Networking Part 2
What is Docker Community Edition?
Back in March of 2017 Docker split the docker project into two distinct editions. The first one we’ll cover is community edition.
Docker Community Edition is basically a rebranding of the free Docker tools that have been available since inception. Docker community edition can be downloaded and installed for free on any of the supported platforms and is a great option for folks just getting started with Docker or are looking to run simple containers on workstations. Additionally, Community Edition is a great option for those people that are looking for a faster release cadence. Docker CE is released in two different forms:
Docker CE Edge – More Frequent Regular Pre-Release Builds
Docker CE Stable – Stable Builds
While the below image is dated (version numbers are old) it does give you an example of the release cadence between different versions as is shown from docker’s website:
NOTE: On certain platforms, you may even have access to nightly builds for the most current code if interested.
Figure 1: Release Cadence and support Between Difference Docker Versions (NOTE: From blog.docker.com)
Also, worth noting is that being a free edition, official vendor support isn’t available. CE comes with community support only. Which, while extensive, isn’t usually the fastest method of support. That said however, the development roadmap for community edition also comes from the Open Source community. A lot of innovation occurs in open source and if you’re committed to open source and giving back, this may be a great way to do that as an added perk.
So, in summary, even though CE is full blown docker, and you can certainly run things in production on it if you have the skills, you may want to shy away from it if you plan to run critical production workloads with it. That is, unless you have a compelling reason to not use enterprise edition, which we’ll cover next.
What is Docker Enterprise Edition?
When you’re ready to take off the training wheels, Docker Enterprise Edition is where the party is. If you’re ready to REALLY embrace containers, you’ll likely want to take a look at Enterprise Edition. In addition to the features that come in the community edition, according to the Docker EE page, you get a number of other things such as:
- Official product support with defined SLAs
- Extended software maintenance
- Long-term hotfixes and patches
- FIPS 140-2 validated encryption
- Signed container images
- Certified Reference Architectures
- Security Features
- And quite a bit more
I think the big hitter items to point out here are the official product support and the extended software maintenance. This is helpful if you need to retain an older version of Docker for some reason. While many of us try not to be in that situation, it can still happen from time to time. Additionally, as an MSP, having access to true SLA backed product support is a must-have. On top of those two points, if you’re using a third-party plugin or addon with docker, many of those vendors will only provide applicable support if you’re using enterprise edition.
Also, worth mentioning is that like CE, Enterprise Edition comes in 2 variants:
Docker Engine Enterprise – Basically the same as CE, but you get access to official support and certified containers and plugins.
Docker Enterprise – Same as the above but with all the bells and whistles, including container app management, image security scanning….etc…etc.
When should you use Enterprise edition? I would say you’d choose this option when you start using docker for critical production workloads at customer sites. Any situation where you could need support in an expedited way is a place to use enterprise edition over community edition.
Finally, I’d like to wrap this section up by answering the question of “Do I need to purchase a Docker EE license for Windows Server?” The answer today is no. Today when you buy a copy of Windows Server, Docker EE is included. However, I’m not convinced things will stay like that long term with Microsoft and Docker being two separate entities. I could be wrong, but That’s something we’ll keep an eye on here, and hopefully, you will as well in future releases of both product stacks.
With that, I think we’re getting pretty close to being wrapped on the basic Docker information for this series. Moving forward we’ll be digging into some advanced docker topics, and ultimately container orchestration with tools like Kubernetes. What about you? Do you have an interest in container orchestration? Any questions on Enterprise Edition vs. Community Edition? Let us know in the comments section below!
Thanks for reading!
Not a DOJO Member yet?
Join thousands of other IT pros and receive a weekly roundup email with the latest content & updates!