Docker Desktop is the standard way to install and run Docker containers on a supported Windows 10 computer. It includes the Docker Engine, Docker CLI, Docker Compose, and the components required to integrate Docker with Windows Subsystem for Linux 2 (WSL 2).

This tutorial explains how to check your Windows configuration, install Docker Desktop, verify the installation, and resolve common setup problems. It also identifies the older Docker Toolbox instructions shown later on this page as a legacy method that should not be used for a new installation.

Docker Desktop requirements for Windows 10

Before downloading Docker Desktop, confirm that the computer meets the current requirements listed in the official Docker Desktop installation documentation for Windows. Requirements can vary by Docker Desktop release and by the Windows backend you choose.

  • A supported 64-bit version of Windows 10
  • Hardware virtualization enabled in the BIOS or UEFI settings
  • WSL 2 enabled when using the recommended WSL 2 backend
  • Administrator access for installing required Windows components
  • Sufficient memory and disk space for Docker Desktop, container images, and running containers

Docker Desktop can use either the WSL 2 backend or Hyper-V, depending on the Windows edition and configuration. The WSL 2 backend is normally the practical choice for Linux containers because it integrates Docker with installed WSL distributions.

Check the installed Windows 10 version

Press Windows key + R, enter winver, and press Enter. Windows displays the edition, version, and operating system build. Compare this information with the supported versions in Docker’s current documentation before continuing.

Check whether hardware virtualization is enabled

Open Task Manager, select Performance, and then select CPU. The details pane should show Virtualization: Enabled. If it is disabled, restart the computer, open its BIOS or UEFI settings, and enable the virtualization option provided by the processor or system manufacturer.

Install WSL 2 before installing Docker Desktop

Open PowerShell or Windows Terminal as an administrator and run the following command to install WSL and its required components:

</>
Copy
wsl --install

Restart Windows if prompted. You can then check the installed WSL version and distributions with:

</>
Copy
wsl --status
wsl --list --verbose

If an installed Linux distribution is still using WSL 1, replace Ubuntu in the following command with the distribution name shown by wsl --list --verbose:

</>
Copy
wsl --set-version Ubuntu 2

You can also make WSL 2 the default for Linux distributions installed later:

</>
Copy
wsl --set-default-version 2

Download Docker Desktop for Windows 10

Download Docker Desktop from the official Docker Desktop page. Choose the Windows installer that matches the computer’s processor architecture. Most Windows PCs use the x86-64 or AMD64 installer, while Windows on Arm devices require the Arm-compatible installer when supported.

An older version of this tutorial directed readers to the archived Docker for Windows page at https://docs.docker.com/v17.09/docker-for-windows/install/. That link is retained for reference, but the current Docker documentation and download page should be used for a new installation.

Install Docker on Ubuntu

The installer is a large download, and its exact size changes between releases. Allow enough time and disk space for both the installer and the container images you plan to use.

Run the Docker Desktop installer

  1. Open the downloaded Docker Desktop installer.
  2. Approve the Windows User Account Control prompt.
  3. Keep the WSL 2 option selected when you intend to run Linux containers with the WSL 2 backend.
  4. Complete the installation and restart or sign out of Windows if requested.
  5. Open Docker Desktop from the Start menu.
  6. Review the displayed subscription terms and continue only when they are appropriate for your use.
  7. Wait until Docker Desktop reports that the Docker Engine is running.

The exact wording and number of installer screens may differ between Docker Desktop versions. Use the current Docker documentation when an option does not match the screens described here.

Verify Docker Engine and Docker Compose on Windows

Open PowerShell, Command Prompt, or Windows Terminal and check the Docker CLI version:

</>
Copy
docker --version

Check the Docker Engine connection and configuration:

</>
Copy
docker info

Run Docker’s test container to confirm that Docker can download an image and start a container:

</>
Copy
docker run --rm hello-world

A successful run downloads the hello-world image when it is not already available, creates a container, prints a confirmation message, and removes the stopped test container because the command includes --rm.

Docker Compose is included with current Docker Desktop installations. Verify it with the Compose v2 command:

</>
Copy
docker compose version

Run a sample web server in a Docker container

The following command starts an Nginx container, maps port 8080 on Windows to port 80 in the container, and removes the container automatically after it is stopped:

</>
Copy
docker run --rm --name windows-nginx-test -p 8080:80 nginx

Open http://localhost:8080 in a browser. The Nginx welcome page should appear. Return to the terminal and press Ctrl+C to stop the container.

Configure Docker Desktop WSL integration

Docker commands can be made available inside supported WSL 2 distributions through Docker Desktop integration:

  1. Open Docker Desktop.
  2. Open Settings.
  3. Confirm that the WSL 2-based engine is enabled in the general settings when that option is available.
  4. Open Resources > WSL Integration.
  5. Enable integration for the Linux distribution in which you want to run Docker commands.
  6. Select Apply or restart Docker Desktop when requested.

Open the selected WSL distribution and run docker version to test the integration. With Docker Desktop integration enabled, you generally should not install a second Docker Engine inside the same WSL distribution, because the two installations can create conflicting services, sockets, and contexts.

Switch between Linux and Windows containers

Docker Desktop commonly runs Linux containers, which are used by many development images. Windows containers require a compatible Windows configuration and compatible Windows container images. On installations that support both modes, the Docker Desktop menu provides an option to switch container engines.

A Linux container image cannot be run as a Windows container, and a Windows container image cannot be treated as a Linux image. Check the image documentation and select the correct Docker Desktop container mode before starting it.

Docker Desktop memory use on a 4 GB Windows PC

A computer with 4 GB of RAM may be able to start Docker Desktop and run a small container, but available memory will be limited after Windows, WSL 2, Docker Desktop, development tools, and the container workload are all running. Browser-based tools, databases, Java applications, and multiple containers can exhaust the remaining memory quickly.

For a low-memory computer, run only the services required for the current task, stop unused containers, avoid unnecessarily large images, and close other memory-intensive applications. More memory is advisable for multi-container development environments. The memory required by an actual deployment depends on the applications inside the containers rather than Docker alone.

Use the following command to view the live CPU and memory usage of running containers:

</>
Copy
docker stats

Fix common Docker installation problems on Windows 10

The docker command is not recognized

Close and reopen the terminal after installation. Confirm that Docker Desktop is installed and running. If the command is still unavailable, restart Windows and verify that the Docker installation directory has been added to the system PATH.

Docker reports that the daemon is not running

Start Docker Desktop and wait until it reports that the engine is ready. If Docker Desktop is already open, use its restart or troubleshooting option. Also check whether Docker commands are targeting an unintended Docker context:

</>
Copy
docker context ls

WSL 2 installation or kernel update fails

Install pending Windows updates, restart the computer, and update WSL from an administrator terminal:

</>
Copy
wsl --update
wsl --shutdown

Open Docker Desktop again after WSL has shut down. If the problem continues, confirm that the required Windows virtualization features are enabled and that hardware virtualization is enabled in BIOS or UEFI.

Docker Desktop reports that virtualization is disabled

Check Task Manager first. If virtualization is disabled, enable Intel VT-x, Intel Virtualization Technology, AMD-V, SVM Mode, or the equivalent option provided by the computer manufacturer. The option name and location differ between systems.

A container port is unavailable

A message stating that a port cannot be bound usually means another program or container is already using the requested Windows port. Choose a different host port. For example, change -p 8080:80 to -p 8081:80, and then open http://localhost:8081.

Docker Toolbox instructions for older Windows systems

Docker Toolbox was an older solution that ran Docker through Docker Machine and Oracle VirtualBox. It is obsolete and is not recommended for a new Windows 10 installation. The following screenshots and steps are retained only for readers maintaining an old Toolbox-based environment. Use Docker Desktop and WSL 2 on a currently supported Windows system.

The archived Docker Toolbox overview is available at https://docs.docker.com/v17.09/toolbox/overview/.

Docker Toolbox for Windows

In the legacy installer, click Next and choose the destination location.

Docker Toolbox for Windows - Select Destination Location

Click Next and select the legacy components to install.

Docker Toolbox Installation - Select Components

The old installer provided an option to install Git for Windows.

Docker Toolbox Installation - Select Additional Tasks

Docker Toolbox also depended on VirtualBox. Installing or changing this old virtualization stack can conflict with newer WSL 2 or Hyper-V configurations, so do not add it to a current Docker Desktop setup.

Docker Toolbox - Ready to Install

During the historical Toolbox installation, Windows displayed security prompts for VirtualBox drivers. After installation, it created shortcuts such as Docker Quickstart Terminal and Kitematic. These tools are not part of the current Docker Desktop workflow.

Docker on Windows 10 frequently asked questions

Can Docker Desktop be installed on Windows 10 Home?

Docker Desktop can run on a supported Windows 10 Home installation by using the WSL 2 backend. The old advice that Windows 10 Home users must install Docker Toolbox is no longer appropriate. Check Docker’s current Windows requirements because supported Windows versions can change.

Is 4 GB of RAM enough for Docker Desktop?

Four gigabytes may be enough for basic testing with one lightweight container, but it leaves little memory for Windows, Docker Desktop, WSL 2, an editor, and other applications. Databases, Java services, and multi-container projects normally need more available memory.

Do I need Hyper-V to run Docker on Windows 10?

Not when Docker Desktop uses the WSL 2 backend. Hyper-V may still be used for particular Docker Desktop configurations, Windows containers, or eligible Windows editions. Follow the requirements for the backend and container mode you intend to use.

Should Docker Engine also be installed inside Ubuntu on WSL 2?

Usually not when you are using Docker Desktop’s WSL integration. Docker Desktop provides the engine and exposes Docker commands to enabled WSL distributions. Installing another engine inside the same distribution can create conflicting configurations.

How do I confirm that Docker was installed correctly?

Start Docker Desktop and run docker --version, docker info, and docker run --rm hello-world. The installation is working when the CLI can contact the engine and the test container completes successfully.

Docker for Windows editorial QA checklist

  • Confirm that the Windows 10 version described in the tutorial remains supported by the current Docker Desktop release.
  • Verify that WSL installation and update commands still match Microsoft’s supported WSL workflow.
  • Check that Docker Desktop installer labels and settings paths have not changed.
  • Run the hello-world and Nginx examples on a clean Windows installation.
  • Keep Docker Toolbox clearly identified as obsolete legacy information rather than a recommended option.