Why use Docker?

1) Docker makes installation of softwares easy on any computer, by making the installation independent from OS (much needed for tensorflow)

2) You dont have to worry about dependencies.

3) Makes portability of code easy

What is Docker?

Docker is a platform or ecosystem around creating and running containers

Docker stores images of softwares in a repository called docker hub. To run on local machine, docker creates a container by pulling the image from the hub

To run the image,

docker run IMAGE_NAME

What is a container?

Container segments a portion of the hard drive for answering system calls from a particular process

Each container is completely isolated from the other

Such namespacing of hardware resources can be done only in linux systems. Therefore, docker sets up a linux virtual machine on MacOS/Windows. The docker command can only be run through docker client which is a linux VM (in windows/mac)