About this Install Guide

This guide is intended to get you up and running with this tool quickly with the most common settings. For a thorough review of all options, refer to the official documentation.

Install Docker for Windows on Arm

Docker can be run on Windows on Arm machines using the Windows Subsystem for Linux 2 (WSL2).

There is no Docker Desktop for Windows on Arm, please show your support by asking for it

Before you begin

  • Install WSL 2 on the Windows on Arm laptop
  • Install a Linux distribution such as Ubuntu 22.04 Linux distribution in WSL 2 from the Microsoft Store

More information is available in the Learning Path Get started with Windows Subsystem for Linux (WSL) on Arm .

Example Windows on Arm computers

  • Lenovo Thinkpad X13s
  • Microsoft Surface Pro X
  • Samsung Galaxy Book S

Install and test Docker Engine

You can use the general Linux install instructions to install Docker in WSL 2 for Windows on Arm.


            curl -fsSL test.docker.com -o get-docker.sh && sh get-docker.sh
sudo usermod -aG docker $USER ; newgrp docker

The Docker daemon will not automatically start in WSL 2.

It can be started manually:


            sudo /etc/init.d/docker start

It can also be started automatically using by editing /etc/wsl2.conf

Add the info below to the file:


            # Set a command to run when a new WSL instance launches. This example starts the Docker container service.
command = service docker start

To confirm the installation is successful run:


            docker run hello-world

The output should be a welcome message such as:


        Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:

For more examples and ideas, visit:


Use the uname command to identify the architecture:


            uname -m

The output is aarch64 (Arm 64-bit).

Docker Engine is now ready to use for Windows on Arm. You can explore Docker related Learning Paths or learn more about WSL for Windows on Arm .

You may want to create an account on Docker Hub to share images and automate workflows.


How would you rate the overall quality of this tool quick-install guide?