Docker’s stated goals include - simplify and accelerate development workflows. A containerization platform software provider initially released in 2013. Written in ‘Go’ programming language and positioned as a freemium SAAS (Software As A Service), uses Apache License 2.0 as the source code license.
OpenShift is a family of containerization software developed by Red Hat (bought by IBM in 2019). Its flagship product is the OpenShift Container Platform—an on-premises platform as a service built around Docker containers orchestrated and managed by Kubernetes on a foundation of Red Hat Enterprise Linux. Red Hat® OpenShift® is a hybrid cloud, enterprise Kubernetes application platform.
Mesosphere DCOS (Data Center Operating System) is an open-source, distributed operating system built with Apache Mesos. It was developed and announced in April 2016. Mesosphere’s DCOS differentiated by providing dedicated container scheduling. Designed to help businesses to automate, deploy apps and scale. The platform targets businesses looking to streamline the production of hyperscale data centers. In 2019 Mesosphere changed its name to D2IQ, the stated goal was to focus on Kubernetes and cloud native solutions.
In 2006, Amazon Web Services (AWS) began offering IT infrastructure services to businesses in the form of web services, commonly known as cloud computing. Amazon Web Services (AWS) is a cloud platform, offering over several fully featured services. AWS offers container orchestration options through Amazon’s Elastic Container Service (ECS) and Elastic Kubernetes Service (EKS).
AWS ECS comes in two instances:
AWS added Elastic Kubernetes Service (EKS) in 2018 in response to the growing customer use of Kubernetes on AWS.
Microsoft Azure Container Service (ACS) provided by Microsoft helps to simplify the management of Docker clusters for running containerized applications. ACS supports 3 Orchestrators: DCOS with Marathon, Docker Swarm, and Kubernetes. ACS facilitates container management at scale with a fully managed Kubernetes container orchestration service that integrates with Azure Active Directory.
Google Cloud provides you with different options to choose from for running the containers. These are Google Kubernetes Engine (for container cluster management), Google Compute Engine (for Virtual Machines and CI/CD pipeline) and Google App Engine Flexible Environment (for containers on fully managed PaaS).
|PARAMETERS||Docker||RedHat OpenShift||Mesosphere||AWS ECS/EKS||Microsoft Azure Container Service||Google container Engine (GKE)|
|Choice of Orchestrator||Docker Swarm||Kubernetes||Marathon||Kubernetes||Kubernetes||Kubernetes|
|Integration||GitLab CI/CD||Agile||Spark for a specific HDFS cluster||Amazon MQ, Amazon SQS, Amazon SNS and Amazon SWF||Logic Apps, Service Bus, API Management and Event Grid||Google Cloud|
|Networking & Storage||Networking subsystem is pluggable, using drivers - bridge / host / overlay / macvlan / Network plugins||ovirtmgmt network / Red Hat Virtualization storage domain - OpenShift Registry||EMC's ScaleIO, OpenStack Cinder, Amazon Web Services (AMZN) Elastic Block Storage||Virtual Private Cloud (VPC), VPN Gateway, Route 53, Direct Connect / Identity and Access Management (IAM), Directory Service||Virtual Network, VPN Gateway, DNS, ExpressRoute / Azure Active Directory, Azure Active Directory Domain Services||Network Attached Storage (NAS) service / Google Cloud Storage|
|API Management||Axway API Management system||Red Hat® 3scale API Management||DC/OS API||Amazon API Gateway||Azure API Management||Cloud Endpoints|
|Supported Images||Windows & Linux||Linux||Windows & Linux||Windows & Linux||Windows & Linux||Windows & Linux|
|Cluster Management||Integrated into Docker Engine / Docker Swarm||OpenShift Web Console OpenShift Origin command line interface (CJI)||Kommander Konvoy Cluster||AWS Portal, AWS CLI||Azure Portal||Google Portal gcloud command-line tool|
|Add Node||Docker Swarm||Manual Run an Arsible playbook & CU||DCOS / CLI||Manual Available for Nodes||Manual Worker Nodes Only Not available for Master nodes||Google Cloud Console CLI|
|Application File||Compose Format||Compose Format||Compose Format||Compose format Task definition file||Compose format||Kubernetes represents applications as Pods|
|Log Analytics||3rd party (Site24x7 provides monitoring and logging)||Ops Clster, Elasticsearch, Fluentd, Kbana and Curator||DC/OS UI component health page||AWS Cloud Trail and AWS Cloud Watch(Log Driver)||Azure Log Analytics in Operations Management Suite||Stack Driver|
Learn in detail the similarities and differences between Docker and Kubernetes that'll give you a guideline for choosing the right system for your use case.