Why use Docker for Windows?
Why use Docker for Windows – Docker for Windows
* Avoids the work on my machine but doesn’t work on production
problem: This problem occurs due to the inconsistent environment
throughout the software development workflow. With Docker you can
run an application within a container which contains all the
dependencies of the application and the container can be run
throughout the software development cycle. This practice provides a
consistent environment throughout the software development life
* Improves productivity: By installing Docker on windows we’re
running Docker natively. If you’ve been following Docker for a
while, you know that Docker containers originally supported only
Linux operating systems. But thanks to the recent release, Docker
can now natively run on windows, which means that Linux support is
not needed, instead the Docker container will run on the windows
* Supports native networking: Not only the Docker container, the
entire Docker tool set is now compatible with windows. This
includes the Docker CLI (client), Docker compose, data volumes and
all the other building blocks for Dockerizied infrastructure are
now compatible with windows. But how is this advantageous? Since
all the Docker components are locally compatible with windows, they
can now run with minimal computational overhead.
Docker For Windows Prerequisites
Docker for Windows – Prerequisites
The following requirements need to be met before installing Docker on
1. Check if you’re using Windows 10, either pro edition or enterprise
edition, 64-bit system. Docker will not run on any other windows
version. So if you’re running on an older windows version, you can
install the Docker toolbox instead.
2. Docker for windows requires a Type-1 hypervisor and in the case of
windows, it’s called the Hyper-V. Hyper-V is basically a
lightweight virtualization solution build on top of the hypervisor
framework. So you don’t need a virtual box, you just have to enable
3. And also you need to enable the virtualization in BIOS. Now when
you install Docker for windows, by default of this is enabled. But
in case you’re facing any issue during installation, please check
if your Hyper-V and virtualization is enabled.
Components Installed With Docker
Components installed with Docker – Docker for Windows
1. Docker Engine: When we say Docker, we actually mean Docker engine.
The Docker engine contains the Docker daemon, REST API for
interacting with the Docker daemon and a command line interface
client that communicates with the daemon. Docker daemon accepts
Docker commands such as Docker run, Docker build, etc, from the
2. Docker Compose: Docker compose is used to run multiple Docker
containers at once by using a single command, which is
3. Docker Machine: Docker machine is used to install Docker engine. It
is basically what you install on your local system. The Docker
machine has it’s own CLI client known as the Docker machine and a
Docker engine client called Docker.
4. Kitematic: Kitematic is an open source project built to simplify
the use of Docker on Windows. It helps to automate the installation
of Docker and it provides a very interactive user interface for
running Docker containers.
If you want to learn more about Docker for Windows, check out this
video by our DevOps experts.
This Edureka video on Docker For Windows we’ll discuss Docker which is
one of the best containerization platforms out there.
What Is Docker?
Docker is a containerization platform that runs applications within
containers called Docker containers. Docker containers are light
weighted when compared to virtual machines. When you install a Virtual
machine on your system, it uses the guest operating system on top of
your host operating system. This obviously takes up a lot of resources
like disk space, RAM, etc. On the other hand, Docker containers make
use of the host operating system itself.
What is Docker – Docker for Windows
In the above image, you can see that, there’s a host operating system
on top of which the Docker engine is mounted. The Docker engine runs
container #1 and container #2. Both of these containers have different
applications and each application has its own libraries and packages
installed within the container.
I hope you have a good idea about what Docker is if you still have
doubts check out this blog to learn more!
Let’s discuss some Docker terminologies now:
* Docker Images
Docker images are read-only templates to build Docker images. Docker
images are created from a file called Dockerfile. Within the
Dockerfile, you define all the dependencies and packages that are
needed by your application.
* Docker Containers
Every time you run a Docker image, it runs as a Docker container.
Therefore, a Docker container is the run time instance of a Docker
* Docker’s Registry
Docker’s registry, known as DockerHub is used to store Docker images.
These images can be pulled from the remote server and can be run
locally. DockerHub allows you to have Public/Private repositories.
* Docker Swarm
Docker swarm is a technique to create and maintain a cluster of Docker
engines. A cluster of Docker engines comprises of multiple Docker
engines connected to each other, forming a network. This network of
Docker engines is called a Docker swarm. A Docker manager initiates the
whole swarm and the other Docker nodes have services running on them.
The main goal of the Docker manager is to make sure that the
applications or services are running effectively on these Docker nodes.
* Docker Compose
Docker compose is used to run multiple containers at once. Let’s say
that you have 3 applications in 3 different containers and you want to
execute them at once. This is where Docker compose comes in, you can
run multiple applications in different containers at once, with
a single command, which is docker-compose up.
We’ll begin our demo by installing Docker for windows. But before we do
that, check if you’ve met the prerequisites.
One more thing to note is since Docker for Windows requires Microsoft’s
Hyper-V and once it’s enabled, VirtualBox will no longer be able to run
virtual machines. So you can’t run Docker for Windows and a VirtualBox
on the same system, side by side.
Install Docker On Windows:
1. Download Docker for Windows installer from the official website 2. Double-click on the installer to run it 3. Go through the Install Wizard, accept the license and proceed with the install 4. After installation, open the Docker for Windows app and wait till the whale icon on the status bar becomes stable 5. Open up any terminal like Windows PowerShell and start running Docker
Installation – Docker for Windows – Edureka Installation – Docker for
Enough of theory, let’s get our hands dirty and create a simple
Python web application by using Docker Compose. This application
uses the Flask framework and maintains a hit counter on Redis.
Flask is a web development framework, written in Python and Redis is an
in-memory storage component, used as a database. You don’t have to
install Python or Redis, we’re simply going to use Docker images for
Python and Redis.
In this demo we’re going to use Docker compose to run two services,
1. Web service
2. Redis service.