Windows 10 version 2004 (Build 10941) or higher.
Enabled Windows Subsystem for Linux feature. To enable following enter in Powershell
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-LinuxEnabled Virtualization feature. (Required for WSL2)
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatformDownload Ubuntu from Microsoft Store
Open it and finish the installation process
To disable password (Optional, not recomended)
# Open
sudo nano /etc/sudoers.d/YOUR_USERNAME
# Example
YOUR_USERNAME ALL=(ALL) NOPASSWD:ALLIn PowerShell check if WSL is installed: wsl --list --verbose
If version is 1 convert it to 2 by entering:
wsl --set-version <distro-name> 2
# Example
wsl --set-version Ubuntu 2If it throws an error install linux kernel update package
Download Windows terminal from Microsoft store
Open settings and set default profile to Ubuntu
Update Ubuntu terminal
sudo apt update
sudo apt upgradeInstall build tools
sudo apt install build-essentialInstall git
sudo apt install gitSet end of line
git config --global core.autocrlf inputInstall nvm:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bashRestart your terminal
To check if installation was successfull
command -v nvmIt should return nvm
If it does not return anything load nvm
[[ -s $HOME/.nvm/nvm.sh ]] && . $HOME/.nvm/nvm.shIf nvm is not defined each time you open Terminal
# Open zsh config
sudo nano ~/.zshrc
# Add this lines at the bottom
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"Install node
nvm install nodeRestart terminal
Install your node version
nvm install <node version>
# Example
nvm install 12Install and update dependencies
sudo apt update
sudo apt install apt-transport-https ca-certificates curl software-properties-commonAdd Dockers’s official GPG-key.
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -Verify this by running:
sudo apt-key fingerprint 0EBFCD88
#Output: 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88Add the Docker repository to your list of repositories.
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"Update the list of repositories again and install Docker CE.
sudo apt update
sudo apt install docker-ceStart docker manually
sudo service docker startVerify Docker by booting up their hello-world container.
sudo docker run hello-worldInstall current stable release.
sudo curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-composeMake the file executable.
sudo chmod +x /usr/local/bin/docker-composeVerify the installation.
docker-compose --version
# output: docker-compose version 1.24.0, build 0aa59064Download Docker Desktop from official webpage.
Run command to verify docker container is working
docker run -dp 80:80 docker/getting-startedYou should see new container inside Docker Desktop
Add their gpg key
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -Add their repository
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.listInstall yarn, --no-install-recommends flag skips node installation
sudo apt update
sudo apt install --no-install-recommends yarn
Verify installation
yarn --versionInstall zsh
sudo apt install zshSet default shell to zsh
chsh -s $(which zsh)Install Oh My ZSH
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"Follow the instructions
Application won't reload on change
Make sure your project is inside home directory not mnt
NVM command "command -v nvm" doesn't return anything
If it does not return anything load nvm
[[ -s $HOME/.nvm/nvm.sh ]] && . $HOME/.nvm/nvm.shIf nvm is not defined each time you open Terminal
# Open zsh config
sudo nano ~/.zshrc
# Add this lines at the bottom
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"Yarn ERROR: There are no scenarios; must have at least one
Remove cmdtest package
sudo apt remove cmdtestInstall yarn again
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt update
sudo apt install yarn