Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 47 additions & 9 deletions README.en.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,11 @@
* [Installation of WSL 2](#installation-of-wsl-2)
* [Windows Update](#windows-update)
* [Update WSL](#update-wsl)
* [(Optional) Enabling WSL on older versions of Windows 10](#optional-enabling-wsl-on-older-versions-of-windows-10)
* [Set the default version of WSL to version 2](#set-the-default-version-of-wsl-to-version-2)
* [Install Ubuntu](#install-ubuntu)
* [(Optional) Change the version of a Linux distribution from WSL 1 to WSL 2](#optional-change-the-version-of-a-linux-distribution-from-wsl-1-to-wsl-2)
* [Installation of WSL 2 via Windows Store](#installation-of-wsl-2-via-windows-store)
* [Installation of WSL 2 via Microsoft Store (alternative)](#installation-of-wsl-2-via-microsoft-store-alternative)
* [Integration with VSCode](#integration-with-vscode)
* [Windows Terminal as the default development terminal for Windows](#windows-terminal-as-the-default-development-terminal-for-windows)
* [What WSL 2 Can Use from Your Machine's Resources](#what-wsl-2-can-use-from-your-machines-resources)
Expand Down Expand Up @@ -103,7 +104,8 @@
* [Can I run graphical applications in WSL 2?](#can-i-run-graphical-applications-in-wsl-2)
* [Can I use WSL in production scenarios?](#can-i-use-wsl-in-production-scenarios)
* [Can I run Docker Engine alongside Docker Desktop?](#can-i-run-docker-engine-alongside-docker-desktop)

* [Questions about Docker Desktop](#questions-about-docker-desktop)
* [Want to set up a more productive environment on Windows?](#want-to-set-up-a-more-productive-environment-on-windows)

</details>

Expand Down Expand Up @@ -152,12 +154,31 @@ Make sure your Windows is updated, as WSL 2 depends on an updated version of Hyp

### Update WSL

With Windows 10 version 2004 or Windows 11, WSL will already be present on your machine. Run the command to get the latest version of WSL:
With Windows 10 version 2004 or any version of Windows 11, WSL will already be present on your machine. To ensure you're using the latest version of WSL, run:

```bash
wsl --update
```

---

### (Optional) Enabling WSL on older versions of Windows 10

On older versions of Windows 10, WSL 2 is not enabled by default. Follow these steps:

1. Press `Win + R`, type `optionalfeatures` and press Enter.
2. In the "Windows Features" window, enable:

- Windows Subsystem for Linux
- Virtual Machine Platform
- Hyper-V

3. Click **OK** and restart your computer.

> These features are essential for WSL 2 to work and to avoid errors like `Could not start the operation because a required feature is not installed.`.

---

### Set the default version of WSL to version 2

Version 2 is usually the default, but version 1 of WSL might be the default. Run the command below to set version 2 as the default:
Expand Down Expand Up @@ -188,21 +209,31 @@ We recommend using the [Windows Terminal](https://docs.microsoft.com/en-us/windo

### (Optional) Change the version of a Linux distribution from WSL 1 to WSL 2

If the Linux distribution you installed is on version 1, you can change it to version 2 with the following command:
If you already had WSL installed before and the distribution is using version 1, change it with:

```bash
wsl --set-version <distribution name> 2
```

This rarely happens, but some people already had WSL 1 installed before WSL 2 was released. If you don't know which version you're using, run the command:

```bash
wsl -l -v
```

Make sure the distribution you're using is on version 2. If not, run the command above to change the version.

---

Congratulations, your WSL2 is now up and running!

![Example of WSL2 running](img/wsl2-working.png)

### Installation of WSL 2 via Windows Store
---

It is also possible to install Linux distributions from the Windows Store. Just access the Windows Store, search for the desired Linux distribution name, and click install.
### Installation of WSL 2 via Microsoft Store (alternative)

We suggest Ubuntu (without a version) because it is a popular distribution that comes with many useful development tools installed by default.
It is also possible to install Linux distributions from the Microsoft Store. Just open the store and search for the desired distribution, such as `Ubuntu`, and click install.

![Linux distributions in the Windows Store](img/linux-distros.png)

Expand Down Expand Up @@ -845,6 +876,13 @@ WSL is designed as a development tool and is not recommended for production use.

No, you can only run one at a time. It is possible to have both installed, but only one can be running at any given time.

### Dúvidas sobre o Docker Desktop
### Questions about Docker Desktop

We did a complete overview of Docker Desktop, including for other operating systems as well. Check it out [https://www.youtube.com/watch?v=99dCerRKO6s](https://www.youtube.com/watch?v=99dCerRKO6s)

### Want to set up a more productive environment on Windows?

Check out the tutorials below:

We did a complete overview of Docker Desktop, including for other operating systems as well. Check it out [https://www.youtube.com/watch?v=99dCerRKO6s](https://www.youtube.com/watch?v=99dCerRKO6s)
- Productive development environment setup: [https://github.com/argentinaluiz/ambiente-dev-produtivo](https://github.com/argentinaluiz/ambiente-dev-produtivo)
- How to set up a productive environment in VSCode: [https://github.com/argentinaluiz/my-vscode-settings](https://github.com/argentinaluiz/my-vscode-settings)
84 changes: 64 additions & 20 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,11 @@
- [Instalação do WSL 2](#instalação-do-wsl-2)
- [Windows Update](#windows-update)
- [Atualizar o WSL](#atualizar-o-wsl)
- [(Opcional) Habilitando WSL em versões antigas do Windows 10](#opcional-habilitando-wsl-em-versões-antigas-do-windows-10)
- [Atribuir a versão default do WSL para a versão 2](#atribuir-a-versão-default-do-wsl-para-a-versão-2)
- [Instale o Ubuntu](#instale-o-ubuntu)
- [(Opcional) Alterar a versão de uma distribuição do Linux de WSL 1 para WSL 2](#opcional-alterar-a-versão-de-uma-distribuição-do-linux-de-wsl-1-para-wsl-2)
- [Instalação do WSL 2 via Windows Store](#instalação-do-wsl-2-via-windows-store)
- [(Opcional) Alterar a versão de uma distribuição Linux de WSL 1 para WSL 2](#opcional-alterar-a-versão-de-uma-distribuição-linux-de-wsl-1-para-wsl-2)
- [Instalação do WSL 2 via Microsoft Store (alternativa)](#instalação-do-wsl-2-via-microsoft-store-alternativa)
- [Integração com VSCode](#integração-com-vscode)
- [Windows Terminal como terminal padrão de desenvolvimento para Windows](#windows-terminal-como-terminal-padrão-de-desenvolvimento-para-windows)
- [O que o WSL 2 pode usar de recursos da minha máquina?](#o-que-o-wsl-2-pode-usar-de-recursos-da-sua-máquina)
Expand Down Expand Up @@ -109,14 +110,13 @@

</details>


## O que é o WSL2

Em 2016, a Microsoft anunciou a possibilidade de rodar o Linux dentro do Windows 10 como um subsistema, isso foi chamado de **WSL** ou **Windows Subsystem for Linux**.

O acesso ao sistema de arquivos no Windows 10 pelo Linux era simples e rápido, porém não tínhamos uma execução completa do kernel do Linux, além de outros artefatos nativos e isto impossibilitava a execução de várias tarefas no Linux, uma delas é o Docker.

Em 2019, a Microsoft anunciou o **WSL 2**, com uma dinâmica aprimorada em relação a 1ª versão:
Em 2019, a Microsoft anunciou o **WSL 2**, com uma dinâmica aprimorada em relação à 1ª versão:

* Execução do kernel completo do Linux.
* Melhor desempenho para acesso aos arquivos dentro do Linux.
Expand All @@ -128,6 +128,8 @@ Com WSL 2 é possível executar Docker e outras ferramentas que dependem do Kern

Compare as versões do WSL: [https://docs.microsoft.com/pt-br/windows/wsl/compare-versions](https://docs.microsoft.com/pt-br/windows/wsl/compare-versions)

---

## Requisitos mínimos

* **Windows 10 Home ou Professional**
Expand All @@ -137,14 +139,16 @@ Compare as versões do WSL: [https://docs.microsoft.com/pt-br/windows/wsl/compar
* **Windows 11 Home ou Professional**
- Versão 22000 ou superior (qualquer Windows 11).

* Uma máquina compatível com virtualização (verifique a disponibilidade de acordo com a marca do seu processador. Se sua máquina for mais antiga pode ser necessária habilita-la na BIOS).
* Uma máquina compatível com virtualização (verifique a disponibilidade de acordo com a marca do seu processador. Se sua máquina for mais antiga pode ser necessária habilitá-la na BIOS).

* Pelo menos 4GB de memória RAM (Recomendado 8GB).

Provavelmente seu Windows já está na versão suportada, mas verifique isto acessando `Todas as Configurações > Sistema > Sobre`. Caso não esteja, use o Assistente do Windows Update para atualizar a sua versão do Windows.

> **É essencial manter o Windows atualizado, pois o WSL 2 depende de uma versão atualizada do Hyper-V. Verifique o Windows Update.**

---

## Instalação do WSL 2

Todas as instruções abaixo são para o Windows 10/11.
Expand All @@ -155,20 +159,41 @@ Verifique se seu Windows está atualizado, pois o WSL 2 depende de uma versão a

### Atualizar o WSL

Com a versão 2004 do Windows 10 ou Windows 11, o WSL já estará presente em sua máquina, execute o comando para pegar a versão mais recente do WSL:
Com a versão 2004 do Windows 10 ou qualquer versão do Windows 11, o WSL já estará presente em sua máquina. Para garantir que você está usando a versão mais recente do WSL, execute:

``` bash
```bash
wsl --update
```

---

### (Opcional) Habilitando WSL em versões antigas do Windows 10

Em versões mais antigas do Windows 10, o WSL 2 não vem habilitado por padrão. Siga os passos seguintes.

1. Pressione `Win + R`, digite `optionalfeatures` e pressione Enter.
2. Na janela “Recursos do Windows”, habilite:

- Subsistema do Windows para Linux
- Plataforma de Máquina Virtual
- Hyper-V

3. Clique em **OK** e reinicie o computador.

> Esses recursos são essenciais para o funcionamento do WSL 2 e para evitar erros como `Não foi possível iniciar a operação porque um recurso necessário não foi instalado.`.

---

### Atribuir a versão default do WSL para a versão 2

A versão 2 normalmente é a default, mas a versão 1 do WSL pode estar como default, execute o comando abaixo para definir como default a versão 2:
A versão 2 normalmente é a default, mas a versão 1 do WSL pode estar como padrão. Execute o comando abaixo para definir como padrão a versão 2:

``` bash
```bash
wsl --set-default-version 2
```

---

### Instale o Ubuntu

Execute o comando:
Expand All @@ -179,37 +204,56 @@ wsl --install

Este comando irá instalar o `Ubuntu` como o Linux padrão.

Se você quiser instalar uma versão diferente do Ubuntu, execute o comando `wsl -l -o`. Será listado todas as versões de Linux disponíveis. Instale a versão escolhida com o comando `wsl --install -d nome-da-distribuicao`.
Se quiser instalar uma versão diferente do Ubuntu, execute:

```bash
wsl --list --online
```

Caso queria instalar outra distribuição execute:

```bash
wsl --install -d nome-da-distribuicao
```

Sugerimos o Ubuntu (sem versão) por ser uma distribuição popular e que já vem com várias ferramentas úteis para desenvolvimento instaladas por padrão.

Após o término do comando, você deverá criar um **nome de usuário** que poderá ser o mesmo da sua máquina (crie um nome de usuário sem espaço e caracteres especiais) e uma **senha** (defina uma senha forte). Esta senha será usada para instalar pacotes e realizar operações de superusuário.
Após o término da instalação, será solicitado que você crie um **nome de usuário** (sem espaços ou caracteres especiais) e uma **senha**. Essa senha será usada para instalar pacotes e executar comandos como superusuário.

Para abrir uma nova janela do Ubuntu, basta digitar `Ubuntu` no menu iniciar e clicar no ícone do Ubuntu.
Para abrir o Ubuntu, digite `Ubuntu` no menu iniciar e clique no ícone.

Recomendamos o uso do [Windows Terminal](https://docs.microsoft.com/pt-br/windows/terminal/get-started) como terminal padrão para desenvolvimento no Windows. Ele agregará o shell do Ubuntu, assim como o PowerShell e o CMD em uma única janela, além de permitir personalização de cores e temas.
---

### (Opcional) Alterar a versão de uma distribuição do Linux de WSL 1 para WSL 2
### (Opcional) Alterar a versão de uma distribuição Linux de WSL 1 para WSL 2

Se a distribuição Linux que você instalou estiver na versão 1, você pode alterar para a versão 2 com o seguinte comando:
Se você já tinha o WSL instalado antes e a distribuição está usando a versão 1, altere com:

``` bash
```bash
wsl --set-version <distribution name> 2
```

Isto acontece raramente, mas algumas pessoas já tinham o WSL 1 instalado antes do WSL 2 ser lançado. Se você não sabe qual versão está usando, execute o comando:

```bash
wsl -l -v
```

Certifique-se de que a distribuição que você está usando está na versão 2. Se não estiver, execute o comando acima para alterar a versão.

---

Parabéns, seu WSL2 já está funcionando!

![Exemplo de WSL2 funcionando](img/wsl2-working.png)

### Instalação do WSL 2 via Windows Store
---

Também é possível instalar distribuições Linux pelo Windows Store. Basta acessar o Windows Store e procurar pelo nome da distribuição Linux desejada e clicar em instalar.
### Instalação do WSL 2 via Microsoft Store (alternativa)

Sugerimos o Ubuntu (sem versão) por ser uma distribuição popular e que já vem com várias ferramentas úteis para desenvolvimento instaladas por padrão.
Também é possível instalar distribuições Linux pela Microsoft Store. Basta abrir a loja e buscar pela distribuição desejada, como `Ubuntu`, e clicar em instalar.

![Distribuições Linux no Windows Store](img/linux-distros.png)


### Integração com VSCode

O Visual Studio Code tem uma extensão chamada **Remote - WSL** que permite acessar o WSL 2 diretamente do VSCode. Com esta extensão, você pode editar seus arquivos diretamente no WSL 2, rodar comandos, instalar extensões e muito mais.
Expand Down