https://docs.docker.com/get-started/overview/
Docker is a tool that eases the development of applications. Basically, it solves the problem of It runs on my machine by shipping your machine to the other person.
Docker uses in a loosely isolated environment called container. Containers are lightweight (can be easily shared) and contains everything you need to run the application. As a result, docker is used for: