In this tutorial we will discuss about docker editions. Docker is available in 2 editions:
- Community Edition (CE)
- Enterprise Edition (EE)
1. Community Edition (CE)
Docker Community Edition (CE) is ideal for individual developers and small teams looking to get started with Docker and experimenting with container-based apps. Docker CE has two update channels, stable and edge:
- Stable gives you reliable updates every quarter
- Edge gives you new features every month
While Edge will receive security updates and bug fixes for the current release, the stable version will get similar updates for four months after the initial release.
Community Edition (CE) pros
- The foundational Docker software is open source and available to everyone as part of Docker Community Edition.
- Most Docker CE components are licensed under the Apache 2.0 license which means Docker is free to use for any reason, so long as you include the license and copyright notices.
- Docker CE includes the docker engine (runtime) and the Docker Swarm orchestrator, and you can use the Kubernetes orchestrator if you want to.
- There are desktop versions of Docker CE for macOS and Windows 10, as well as server versions that run on CentOS, Debian, Fedora and Ubuntu so platform support is broad.
- There is a large ecosystem of add-ons to help you get the most out of Docker CE.
Community Edition (CE) cons
- Docker CE is community-supported, so you’ll need to rely on your own expertise and that of the Docker open source community should you need assistance or guidance.
- This Edition is not supported on Windows Server so deploying Windows containers is limited to the Docker Windows Desktop.
- Docker issues patches for CE releases for only seven months after general availability of a specific release so you need to keep your systems current to take advantage of bug fixes.
- Finally, there is no built-in graphical user interface (GUI) to interact with, and manage Docker CE; you must use the command line interface (CLI) or a third-party tools.
2. Enterprise Edition (EE)
Docker Enterprise Edition (EE) is designed for enterprise development and IT teams who build, ship, and run business critical applications in production at scale.
Docker Enterprise Edition comes in three versions: basic, standard and advanced. The Basic edition comes with the Docker platform, support and certification, while the Standard and Advanced version add additional features such as container management (Docker Data center) and Docker Security Scanning.
Enterprise Edition (EE) Pros
- Docker EE is designed for enterprise-class scale and you can manage hundreds or thousands of containers with the tools, features and infrastructure that Docker EE provides.
- It works equally well for smaller sites where you have limited IT resources and you want to focus on the dev part of DevOps rather than manage an open-source solution.
- Docker EE is a commercially supported product with defined SLAs and extended maintenance cycles of up to 24 months.
- The Docker Trusted Registry supports image storage, vulnerability scanning, image promotion, and integration with your CI/CD pipeline tools such as Jenkins and Git.
- Supported platforms include CentOS, Oracle Linux, RHEL, SLES, Ubuntu, and Windows Server so you have a lot of choices in terms of which platform to use.
Enterprise Edition (EE) Cons
- Docker EE requires enterprise licensing and this cost may be initially steep for smaller companies or for organizations who are just starting out.
- As with any platform, Docker EE may limit some of your hybrid cloud deployment choices depending on your architecture.
- The decision to go it alone (or rather, go with the open-source community) with Docker CE or to go with the commercial Docker EE is often forced on you out of necessity.
- If you don’t have the budget for EE, then CE or a pay-as-you-go cloud-based container service are likely your best options.
- It can also make a lot of sense to begin your containerization journey with Docker CE and then later upgrade to EE when you have more experience and are starting to deploy your apps into production.