When comparing Docker Swarm vs OpenShift, the Slant community recommends Docker Swarm for most people. In the question“What are the best Docker orchestration tools?” Docker Swarm is ranked 2nd while OpenShift is ranked 7th. The most important reason people chose Docker Swarm is:
This also means that containers can be launched with a simple `docker run` command and Swarm will take care of the rest, such as selecting the appropriate host on which to run the container.
Ranked in these QuestionsQuestion Ranking
Pro Easy setup
This also means that containers can be launched with a simple
docker run command and Swarm will take care of the rest, such as selecting the appropriate host on which to run the container.
Pro Communicates with other Docker tools easily
Since Docker Swarm is a native Docker tool, it exposes the Docker API, making it possible t integrate it and communicate with other Docker tools (CLI, Compose, Krane, etc.).
Docker Swarm is much more lightweight than alternatives: Kubernetes and Mesosphere. Kubernetes, for instance, is very complex - it downloads and installs half of the web, where Docker Swarm has much, much smaller footprint.
Pro Compatible with Docker Compose
This gives you a well-rounded workflow.
Pro Open source
Docker Swarm is open source and provides great guides/documentation for those who want to contribute.
Pro Built-in continuous integration
Continuous integration is not only built-in OpenShift, it's actually a standard part the workflow.
Pro Can be used to introduce specialized tasks through the application hosted on it
Because of its high flexibility and customization power, OpenShift can be used to create specialized tasks for the application being hosted on it. For example, an entire array of dynos (also known as gears) can be dedicated to media transcoding in order to build a custom media converter infrastructure.
Pro Small learning curve
Learning to use OpenShift is pretty easy. Most environments can be set up in a few simple steps and for everything else the official documentation and third-party resources are extremely helpful.
Con Not fault tolerant
If a node dies in your cluster, the containers on that node won't be restarted
Con If a node dies in the Swarm Cluster, the containers on that node WILL be started on a another node ...
Con Bounded by the limitations of the Docker API
If the Docker API doesn't support something, then you are pretty much out of luck when it comes to Docker Swarm, because it won't be supported by Swarm either.
Con Official customer support is lacking
OpenShift seems to rely more on written documentation and on the community to solve any problem users may have. The forums and IRC channel are active and very helpful, but the official customer support could be better.