Windows, WSL, Docker, and Free Starters

Learn how to set up WSL and Docker on Windows - Free & open-source samples provided.

Docker Desktop UI
Docker Desktop UI 

Hello! This article presents how to install WSL and Docker on Windows and later execute a few open-source samples on top of this popular virtualization stack. For newcomers, WSL is a layer provided by Microsoft that allows us to execute all commands exposed by a native Linux distro and Docker is a popular virtualization software used to deliver and execute software programs in isolated environments. Thanks for reading!

Install WSL

The Windows Subsystem for Linux lets developers run a GNU/Linux environment directly on Windows. The latest version is WSL 2, which powers the Windows Subsystem for Linux to run ELF64 Linux binaries on Windows.

The installation and overall  management can be executed via a PowerShell terminal using simple commands:

List available WSL distros
$ wsl -l -o

NAME            FRIENDLY NAME
Ubuntu          Ubuntu
Debian          Debian GNU/Linux
kali-linux      Kali Linux Rolling
openSUSE-42     openSUSE Leap 42
SLES-12         SUSE Linux Enterprise Server v12
Ubuntu-16.04    Ubuntu 16.04 LTS
Ubuntu-18.04    Ubuntu 18.04 LTS
Ubuntu-20.04    Ubuntu 20.04 LTS
WSL - List Available Distros
Install Ubuntu in WSL
$ wsl --install Ubuntu
WSL Install Ubuntu
Check Current Version
$ wsl -l -v
WSL - Check Version
Update from WSL 1 to WSL 2 (recommended version)
wsl --set-version Ubuntu 2
WSL update to Version 2

Once WSL is installed and we have a usable Linux Distro, we can move forward and install Docker Desktop.


Install Docker on Windows

Docker is an open platform for developing, shipping, and running applications. Docker enables you to separate your applications from your infrastructure so you can deliver software quickly. Before running this simple setup, make sure your workstation provides all requirements:

  • Windows 11/10 64Bit
  • WSL - up & running

Access the download page and download the installer. Double-click Docker Desktop Installer.exe and execute the installer.

When prompted, ensure the Enable Hyper-V Windows Features or the Install required Windows components for WSL 2 option is selected on the Configuration page.

Docker Desktop does not start automatically after installation. To start Docker Desktop we need to locate the app in the Windows menu and start the service.

If all goes well we should be able to execute this test command in the terminal and also access the UI:

docker run -d -p 80:80 docker/getting-started
Docker - Test Command
Docker Desktop UI.
Docker Desktop UI

With Docker and WSL up & running, we start using this virtualization layer by installing and playing with a few open-source apps:

Django Dashboard Material

Simple, open-source crafted with database, authentication, and Docker support on top of a modern Bootstrap 5 design. The codebase uses Django 3.2.6 LTS and simple Gulp tooling for assets management (SCSS, JS).

Let's start the app using provided Docker setup.

Step #1 - Download sources from the public repository

$ git clone https://github.com/app-generator/django-dashboard-material.git
$ cd django-dashboard-material
Django Material Dashboard - Clone Sources

Step #2 - Start in Docker

$ docker-compose up --build
Django Material Dashboard - Start in Docker
Django Material Dashboard - Start in Docker and WSL.
Django Material Dashboard - Start in Docker and WSL.

Flask Pixel Lite

Open-Source Flask starter coded with basic modules, database, ORM, and deployment scripts on top of Pixel Lite UI Kit, a fully responsive and modern Bootstrap 5 UI Kit that will help you build creative and professional websites. The Flask codebase comes with basic modules, database, ORM, and deployment scripts.

Here is the execution via Docker:

Step #1 - Download sources from the public repository

$ git clone https://github.com/app-generator/flask-pixel.git
$ cd flask-pixel
Flask Pixel Lite - Clone Sources

Step #2 - Start in Docker

$ docker-compose up --build 
Flask Pixel Lite - Start in Docker
Flask Pixel Lite - Start in Docker and WSL.
Flask Pixel Lite - Start in Docker and WSL

Django Material Kit

Open-Source seed project generated by AppSeed in Django Framework on top of Material Kit design. Designed for those who like bold elements and beautiful websites, Material Kit 2 is ready to help you create stunning websites and web apps.

Material Kit 2 is built with over 60 frontend individual elements, like buttons, inputs, navbars, nav tabs, cards, or alerts, giving you the freedom of choosing and combining.

Step #1 - Download sources from the public repository

$ git clone https://github.com/app-generator/django-material-kit.git
$ cd django-material-kit
Django Material Kit - Clone Sources

Step #2 - Start in Docker

$ docker-compose up --build 
Django Material Kit - Start in Docker
Django Material Kit - Start in Docker and WSL.
Django Material Kit - Start in Docker

Thanks for reading! For more resources, feel free to access: