A Dockerfile is a text document that contains simple instructions for building Docker images from scratch. In other words, a Dockerfile facilitates the automation of the image creation process.
Docker is a popular platform used by developers to ship, and run applications in containers. Containers are lightweight, portable, and standard unit of software that packages applications and all its dependencies like libraries, binaries, and configuration files into a single image.