Introduction to Docker
Currently, the de facto standard for application container runtimes is Docker, although there are other runtimes, for example, RKT (pronounced rocket). In this chapter, we will focus on Docker. However, many container runtimes are interoperable and built on common standards. For example, RKT containers can easily be spawned from Docker images. This means that even if you decide to deploy your application using Docker images, you are not running into a vendor lock-in.
Running simple containers
We have worked with Docker before in Chapter 4, Asynchronous Microservice Architectures Using Message Queues, to quickly set up RabbitMQ and Kafka message brokers; however, we did not go into details on how Docker actually works. We will assume that you already have a working Docker installation on your local machine. If not, take a look at the official installation instructions to learn how you can install Docker on your operating system: https://docs.docker.com/engine/installation...