In this blog, I will show you how to install Docker version 19 in Windows 10. We will be using community edition (CE) as this is a free version. You can use this edition to install it on your personal computer to learn and build application around it. Knowledge of Docker is a must if you want to build Cloud Native Microservices based applications.
With the new release of Docker Desktop 2.0 for Windows 10 Pro/Enterprise there is also a change in the name. The product 'Docker for Windows' has been renamed to 'Docker Desktop'. It also gets a new version format. That's the reason to start with a new Choco package name. Step by Step – How to Install Docker (2020) in Windows 10 In this blog, I will show you how to install Docker version 19 in Windows 10. We will be using community edition (CE) as this is a free version.
There are other platforms for building container based application. But over the years, Docker has become the industry standard for building container based application using Kubernetes for orchestration. As such, Docker skill is must for IT professionals.
- As of August 2020, Microsoft enabled WSL 2 support for Windows 10 builds 1903 + 1909. For years prior to that you could only run it on Windows Pro, Enterprise or any edition that had Hyper-V available, but since August 2020 pretty much all supported versions of Windows 10 can use Docker Desktop.
- The fastest and easiest way to get started with Docker on Windows.
Lets get started
Prerequisites: Docker requires Hyper-V enabled in Windows 10. Without this Docker will not run after you install Docker. To enable Hyper-V in Windows, please follow my post here
Please note that Docker needs Hyper-V only in Windows 10. It will not work with VMware Workstation or Virtual Box. You can refer to the docker documentation
Docker consumes a lot of RAM. I can feel the performance issue after I run Docker on my 8 GB RAM Laptop. You can still work, it wont create major problems. I think, on a 16 GB RAM machine, you should not feel the performance issue.
8 GB machines works for me, so its OK.
Step 1 – Download Docker
Officially Docker installer, community edition can be downloaded from Docker Store. You will have to create an account to be able to download it. Having an account for Docker is a very good things. It allows you to download docker images in the future.
If you dont want to create an account, this is the direct link to Download Docker Installer.
You can also reach the Docker Store download page from the Docker official page. Go to the Docker Official home Page.
Click on Products-> Docker Desktop on the menu bar. This will take you to the docker desktop product page.
Docker Desktop Product Webpage
Click on Download Desktop for Mac and Windows.
The installer file for windows is around 914 MB.
Step 2 – Run the installer
Double click on the downloaded installer file to start the installation wizard. You will see Windows UAC – User Access Control asking for permission to allow the program to run. Click yes to continue.
Docker Installation – Windows User Access Control
Now you will see Docker installer downloading additional files required. If you dont have internet connection, installer will move on to the next step. Wait for the process to complete and you will see the configuration screen.
Step 3 – Configuration Settings
In this dialog box you will be asked if you want to create desktop icon for Docker. I leave this checked. Second option is if you want to use Linux or Windows Container. This option can be changed later on. I leave it as default, that is unchecked.
Containers run on your host operating system which can be Linux or Windows. Ideally you can run Linux container on Linux OS and Windows container on Windows OS. This could be a problem in development machines if you want to develop Linux container based application on Windows.
To get around this, Docker allow users to create both Linux and windows container on the same windows machine without having to switch between OS platforms. To achieve this, Docker provides a Linux VM for Hyper-V called MobyLinuxVM as a part of installation process. This VM runs Linux container and your Windows 10 host runs Windows Containers. You cannot run both Windows and Linux Containers at the same time. That is why Docker allows you to switch between Windows and Linux container.
With this you can run both Linux and Windows Containers side by side as a part of the same Docker Installation for Windows.
Click OK to start the installation. Wait for the installation to complete.
Docker Installation progress
Once the installation completes, click on Close and restart to complete the installation.
Step 4 – Run Docker
Once the system restarts, run Docker by double clicking the icon created on the desktop or from start menu. You will see a docker icon appear on your windows task bar. If you hover your mouse over it, it will say “Docker is Starting”. You will see a warning asking your permission to start the docker service. Click Start to continue and wait for docker service to start.
Docker Service not running warning
Once docker service starts for the first time, you will see a welcome screen asking you to login to Docker Hub. Enter the docker hub credentials you have created and click on sign in. This is optional but it is highly recommended that you do it.
Docker Desktop welcome screen
Step 5 – Disable Start Docker at Startup
By default, docker will automatically start when you turn on/login to your computer. Since Docker requires a lot of RAM, I don’t recommend this. We can start docker manually when we want to use it.
To disable starting docker at startup, right click on the docker Icon in the task bar. Click on Settings, under General Tab, uncheck, Start Docker when you login.
Click on apply and restart to make the changes. This will restart the docker service again (I will not restart Windows, only the docker service).
Step 6 – Check the version of Docker Installed
Most of the time you will be working with command line to work with Docker. Let this be your first command to check Docker version and see what you get.
Open Powershell or command prompt and enter the command:docker version
You should see something like this.
Docker Version Check – Windows Command Line
That’s it for now.
Whats Next
You can start your Docker Journey by learning about the command you can execute in your computer terminal.
Good luck.
When I'm working with Windows I love to have a standarized way to install software. Did you remember how we have set up our dev machines a few years ago? Well, about five years ago I found this blog post by security expert Troy Hunt and his 102 simple steps for installing and configuring a new Windows 8 machine showed most of the time cinst this
and cinst that
. This opened my eyes, wow there is a package manager for Windows. Since then I started with automation tools like Packer and Vagrant to describe repeatable development and test environments. This also lead me to contribute back to the Chocolatey community repository, because I just couldn't cinst packer
at that time. So I wrote my first Chocolatey package which is very easy as it only links to the official download URL's from the software vendor.
In these five years I went through several Windows machines and contributed missing Choco packages also for installing the Docker tools I needed.
Overview
The following diagram shows you the most relevant Chocolatey packages for Docker. I'll give you a little bit of history and explain why they all exist in the following chapters.
Docker
The first Docker tool that landed as a Chocolatey package was the Docker CLI. Ahmet Alp Balkan working at Microsoft at that time ported the Docker CLI to Windows so we had the docker.exe
to communicate with remote Docker engines running in a Linux machine. This package was and still is called docker
.
Install Docker Toolbox For Windows 10 Enterprise
Nowadays it might be confusing if people want to run choco install docker
and 'just' get the Docker CLI without any Docker Engine. We're in discussion with the Chocolatey team how to softly fix this and transfer the Docker CLI into a new package name called docker-cli
to make it more clear.
Docker Toolbox
Docker, Inc. created Docker Toolbox to have all tools and also VirtualBox bundled together. Manuel Riezebosch started a Chocolatey package docker-toolbox
for it and still maintains it.
This package is usable for people that cannot run the newer Docker Desktop product. The reasons could be
- Still running Windows 7
- Running a Windows 10 Home or LTSB version which is too old
- Running VirtualBox VM's for other tasks that prevent the installation of Hyper-V
Machine, Compose, ...
I worked with VMware Workstation for years so the Docker Toolbox wasn't my thing. I knew that there is a tool called docker-machine
to create Linux VM's with the boot2docker.iso file. That's why I started with the Choco packages for docker-machine
, helped maintaining the docker-compose
package and added some Docker Machine drivers as Chocolatey packages docker-machine-vmwareworkstation
and docker-machine-vmware
as well.
This is the fine granular approach to install only the tools you need, but still using the choco install
experience.
Docker for Windows
Manuel Riezebosch started a Chocolatey package docker-for-windows
which is an excellent work. You can install 'Docker for Windows' product with it which is the successor of 'Docker Toolbox'. But please read the next section to grab the latest version of it.
Docker Desktop
With the new release of Docker Desktop 2.0 for Windows 10 Pro/Enterprise there is also a change in the name. The product 'Docker for Windows' has been renamed to 'Docker Desktop'. It also gets a new version format.
That's the reason to start with a new Choco package name. Please unlearn docker-for-windows
and just use choco install docker-desktop
to get the latest version on your machine.
Thanks Manuel Riezebosch for mainting this choco package!
Windows Server?
If you want to install Docker on a Windows Server 2016 or 2019, there is no Chocolatey package for it.
Unable To Install Docker On Windows 10 Enterprise
Please read Windows Containers on Windows Server installation guide from Microsoft or the Docker Enterprise Edition for Windows Server guide from the Docker Store.
Install Docker On Windows 10 Enterprise Key
TL/DR
The best experience with Docker on a Windows 10 machine is using the Docker Desktop product. Try to grab an up-to-date Windows 10 Pro machine to be all set for it and then run
Otherwise jump over to https://chocolatey.org/search?q=docker and grab one of the other Docker related Chocolatey packages.
Install Docker On Windows 10 Enterprise Linux
I hope this overview of all the Chocolatey packages will give you a better understanding of what is right for your needs. I would love to hear your feedback so please leave a comment below or ask me on Twitter.