In the previous post, I described the docker swarm cluster for simple CRUD application. This article clarifies how to create it step by step. Please, look throw the previous post before reading this one.
I wonder how easy a simple cluster with microservices can be created today. Thanks to such projects like docker swarm and kubernetes. You don’t have to write your own soft for cluster management, most of them have been already created. Also, these platforms unify different projects’ structures and it is easier to support them by different engineers. Docker swarm project seems to be the easiest and the best solution for coming into the microservices’ world. Despite the creation of a cluster may take several minutes with a few commands, a lot of work should be done in order to provide reliability, flexibility, and scalability of the whole application. Docker swarm is a very powerful instrument and it provides great possibilities - our mission is to use it in right way. In this post, I suggest one of the infinite numbers of solutions for simple application. It should be noted, everything in this post is for education purposes - just to get known what can be done with docker swarm.
I often hear from many people, that after starting using docker it is hard to refuse it. I absolutely agree with this fact. Docker for development has decreased the number of configuration errors in our project, so more time can be spent on coding instead of searching why some part doesn’t work. It is very effective especially if a project contains different parts that are being edited by different developers, for example frontend and backend. In such case it is undesirable to waist frontend developer’s time for searching what package or config line is missing (or some other problem) for running backend. Docker solves such difficulties. Moreover, a developer is no longer responsible for setting environment for running project, so entering time to a project has been also decreased. This article is a small advice: how to start using docker in a project.