Container Desktop is an open-source alternative to Docker Desktop. It enables you to build, push, pull, and run Linux containers on Microsoft Windows by providing seamless integration with Docker Engine Community Edition running on Windows Subsystem for Linux. Container Desktop bundles the open-source Docker and Docker Compose CLI clients for a native and simple user experience.
Container Desktop Proxy handles the communication with the Docker Engine running in the container-desktop distribution within Windows Subsystem for Linux v2 (WSL2). The proxy enables a native Docker experience on Microsoft Windows by translating Windows paths to WSL2 paths local to the container-desktop distribution.
With the Container Desktop system tray application you can manage the behavior of Container Desktop. You can start, stop, and restart the Container Desktop Proxy on the Windows host, or enable or disable a Docker Engine proxy in any available WSL2 distribution. Container Desktop installs the Docker CLI and Docker Compose command-line tools.
Note: Container Desktop does not support Windows Containers.
- Run the Docker daemon in its own WSL2 distribution.
- Use
dockeranddocker-composeon Windows and enabled WSL2 distributions to connect to the daemon. - Use Windows paths as volumes — the Container Desktop Proxy translates them to WSL2 paths local to the daemon distribution.
- Start, stop, restart, and quit Container Desktop from the system tray icon.
- Enable Container Desktop integration in installed WSL2 distributions.
- Use Port Forwarding to expose containers on a specific network interface.
- Configure the DNS mode (WSL2 / Primary Network Adapter / Static).
Container Desktop requires WSL2, which is supported on these Windows versions:
- Microsoft Windows 10, Version 1903 with Build 18362.1049 or higher
- Microsoft Windows 10, Version 1909 with Build 18363.1049 or higher
- Microsoft Windows 10, Version 2004 or higher (20H2, 21H1, 21H2, …)
- Microsoft Windows 11, any version or build
-
If you currently have Docker Desktop installed, quit Docker Desktop first.
-
Download the latest ContainerDesktopInstaller.exe from GitHub Releases.
-
Optionally, validate the file checksum against the values in sha256sum.txt:
Get-FileHash .\ContainerDesktopInstaller.exe -Algorithm SHA256
-
Double-click ContainerDesktopInstaller.exe and click Install to start the installation.
Note: Windows Defender SmartScreen may pop up and prevent ContainerDesktopInstaller.exe from starting. When this happens, select More Info and then Run Anyway.
For full installation details, upgrade, and uninstall instructions, see the Installation Guide.
- Microsoft Windows with PowerShell
- .NET 8 SDK
- Docker (either Container Desktop or Docker Desktop)
-
Clone this repository:
git clone https://github.com/container-desktop/container-desktop.git
-
Inside the
container-desktopfolder, run:.\build.ps1
Container Desktop is made possible by the following open-source projects:
- Command Line Parser Library
- Docker.DotNet
- Hardcodet NotifyIcon for WPF
- Managed DismApi Wrapper
- ModernWPF UI Library
- Nerdbank.GitVersioning
- Json.NET
- P/Invoke
- Serilog
- System.IO.Abstractions
- Reactive Extensions
- CompareNetObjects
- AvalonEdit
- NuGet.Versioning
- Docker CLI
- Docker Compose CLI
- The Moby Project
- go-dnsmasq
