DEV Community

Configuração setup básico p/ projetos Ruby/Rails - utilizando o WSL 2

O que será visto durante esta postagem:

  1. Instalação do Windows Terminal.
  2. Instalação do WSL 2.
  3. Instalação e configuração do Ubuntu.
  4. Instalação do Git.
  5. Instalação do PostgreSQL.
  6. Instalação e configuração do VSCode.
  7. Instalação do Rails.

Observação inicial

Pessoal, alguns dos passos apresentados neste guia podem ser acompanhados em vídeo no canal Vídeos de TI no Youtube, que também traz tutoriais práticos e explicativos sobre a temática aqui abordada. Para quem aprende bem por meio de audiovisual, fica a dica. Alguns dos exemplos de conteúdos aqui presentes que vocês também encontrarão por lá são os comandos básicos do terminal Ubuntu (video) e o processo de instalação do RVM (video).

Assim, você poderá optar por seguir via texto por aqui, ou por acompanhar visualmente pelo canal, o que for mais confortável a sua pessoa.

1 - Começando pela instalação do Windows Terminal

Este passo é opcional

O Windows Terminal é uma interface moderna para usar vários shells (CMD, PowerShell, WSL, etc). Apesar de ser opcional, ele é muito recomendado pois facilita quando formos utilizar o WSL 2.

Para instalá-lo é muito simples.

1.1 - Vá até a Microsoft Store

'Image description'

1.2 - Na Microsoft Store busque por ‘Windows Terminal’

E clique nessa opção do menu:

'Image description'

1.3 - Clique em 'Abrir'

'Image description'

Pronto! Já temos o Windows Terminal instalado!

2 - Instalando o WSL 2

O que é o WSL 2 e por que instalá-lo?

WSL 2 (Windows Subsystem for Linux 2) é uma tecnologia da Microsoft que permite rodar um ambiente Linux completo dentro do Windows, de maneira leve e integrada.

Em vez de usar uma máquina virtual tradicional, o WSL 2 roda um kernel Linux real dentro do Windows - só que em segundo plano - permitindo executar comandos, ferramentas e aplicações Linux, como se você estivesse num Ubuntu ou Debian, contudo sem sair do Windows.

Por que o WSL 2 é importante no desenvolvimento em Ruby?

  1. A maioria das aplicações Ruby (especialmente as do Rails) são desenvolvidas e implantadas em servidores Linux.

  2. Usar WSL 2 faz com que seu ambiente local seja idêntico ao do servidor de produção — evitando aquele clássico “funcionava no meu Windows”.

  3. Muitas gems Ruby dependem de bibliotecas nativas do Linux

2.1 - Checando a nossa versão do Windows

Por que checar a versão: É importante checar a versão do Windows antes de instalar o WSL 2 (Windows Subsystem for Linux 2) porque nem todas as versões do Windows suportam o WSL 2 ou suas funções mais recentes.

O WSL 2 requer recursos específicos do sistema operacional, como o subsistema de máquina virtual (Virtual Machine Platform), que só está presente a partir do Windows 10 ( versão 1903 - build 18362 ou superior) e do Windows 11 (em todas as versões).

Para checar a versão do SO vamos pressionar:

'Image description'

Na janela de execução que se abrir digite ‘winver’ e dê um ‘ok’.

'Image description'

O Windows lhe trará a versão que está em vigor na sua máquina.

Certifique-se de que é versão 10 ou alguma acima desta.

'Image description'

2.2 - Verificando se há atualizações a serem feitas

Antes de seguir com o processo, é importante verificar se há atualizações a fazer. Para isso:

Abra o menu iniciar e vá em ‘configurações’.

'Image description'

Vá em ‘Atualização e segurança’.

'Image description'

Verifique se há alguma atualização disponível, caso exista, instale-a.

'Image description'

2.3 - Ativando recursos

Agora vamos ativar alguns recursos do Windows que serão necessários à instalação do WSL 2. Vamos acessá-los.

No menu iniciar vá em ‘ativar ou desativar recursos Windows’.

'Image description'

2.3.1 - Subsistema do Windows para Linux

explicação: É o componente principal do WSL, ele cria a camada de compatibilidade que permite rodar binários Linux (ELF64) diretamente no Windows.

Na janela de opções que irá se abrir ative o ‘Subsistema do Windows para Linux'.

'Image description'

2.3.2 - Plataforma de Máquina Virtual

explicação: Ela fornece os recursos básicos de virtualização que o WSL 2 precisa para rodar um kernel Linux real. Ou seja, ela cria e gerencia pequenas máquinas virtuais leves, usadas pelo WSL 2 para executar o kernel Linux.

Ative também a opção ‘Plataforma de Máquina Virtual’.

'Image description'

2.3.3 - Plataforma do Hipervisor do Windows

explicação: É o conjunto de APIs que permite que o sistema operacional e aplicativos (como WSL 2 ou Docker) usem o Hyper-V — o hipervisor nativo do Windows. É interessante ativar, pois o kernel Linux do WSL 2 roda em uma VM gerenciada por esse hipervisor, que faz o isolamento entre o Windows e o Linux.

Ative adicionalmente a 'Plataforma do Hipervisor do Windows'
'Image description'

2.3.4 - Depois de marcar todas essas opções clique em ‘ok’

'Image description'

2.4 - Reiniciando a máquina para efetivar as mudanças

Depois de feito o carregamento dos recursos selecionados anteriormente, o Windows vai pedir para reiniciar a máquina, clique em ‘reiniciar agora’.

'Image description'

2.5 - Baixando o pacote

explicação: Nós já ativamos os componentes: Subsistema do Windows para Linux, Plataforma de Máquina Virtual e Plataforma do Hipervisor, ou seja, habilitamos o ambiente onde o WSL 2 vai rodar. Mas, ainda falta o kernel Linux propriamente dito — ou seja, “coração” do sistema. O Windows não vem com ele instalado por padrão, o que vamos fazer agora é baixar e instalar o pacote kernel Linux compilado pela Microsoft.

Reiniciada a nossa máquina, agora vamos ao navegador. Insira esta URL neste para baixar o WSL, posteriormente, dê um ‘Enter’:

https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

Depois de baixado, vamos executá-lo. Clique no arquivo baixado.

'Image description'

E depois clique em 'Executar'.

'Image description'

E instale o pacote.

2.6 - Definindo o WSL 2 como a versão padrão

Como o WSL possui duas versões, o WSL e o WSL 2, vamos dar um comando para definir o WSL 2 como a versão padrão para todas as novas distribuições Linux que você instalar no Windows.

Para definir isso, precisaremos dos 'poderes' de Administrador.

Portanto, vamos abrir o terminal ‘PowerShell’ e executá-lo como 'Administrador'.

'Image description'

No terminal ‘PowerShell’ vamos digitar/colar a seguinte opção e rodá-la:

wsl --set-default-version 2
Enter fullscreen mode Exit fullscreen mode

3 - Instalação e configuração do Ubuntu

3.1 - Instalação do Ubuntu

Uma vez instalado o WSL 2, vamos finalmente poder instalar agora o Ubuntu.

Para isso, vá até a ‘Microsoft Store’.

'Image description'

Uma vez nesta, vamos procurar por ‘Ubuntu’ e instalar a versão 'Ubuntu 24.04.1 LTS'.

'Image description'

Clique em ‘Abrir’ para confirmar se a instalação foi concluída corretamente.

'Image description'

3.2 - Checando se o Ubuntu consta no Windows Terminal

Vamos checar se o Ubuntu foi certinho para o menu de terminais do Windows Terminal.

  1. Para isso acesse o seu Windows Terminal.
  2. Clique na setinha ao lado do ‘+’ na parte superior da janela.
  3. No menu que aparecer clique na opção ‘Ubuntu’.

Como mostrado na figura à seguir:

'Image description'

Assim que abrir o terminal no Ubuntu ele vai mostrar essa mensagem na tela:

'Image description'

Aguarde uns segundinhos até ele terminar de instalar.

3.3 - Atribuindo Usuário e Senha ao Ubuntu

Depois disso ele vai pedir para você atribuir um nome para o novo usuário UNIX em:

Enter new UNIX username: 
Enter fullscreen mode Exit fullscreen mode

Insira o nome de usuário desejado.

E vai pedir uma senha - e uma repetição de senha - a esse novo usuário em:

New password:
Enter fullscreen mode Exit fullscreen mode

e em

Retype new password:
Enter fullscreen mode Exit fullscreen mode

Depois disso ele vai terminar de configurar o Ubuntu.

A tela vai ficar mais ou menos assim:

'Image description'

3.4 - Confirmando se as distros estão utilizando o WSL 2

Vá até o PowerShell, digite o comando:

wsl --list –-verbose
Enter fullscreen mode Exit fullscreen mode

O terminal vai mostrar algo assim - caso o WSL que está em uso seja o 2 - na coluna ‘Version’, nesta estará o número 2:

'Image description'

4 - APRENDENDO OS COMANDOS BÁSICOS NO TERMINAL DO UBUNTU

Alguns comandos são essenciais para uma boa navegação em terminais do Ubuntu. Aqui traremos alguns, vale a pena revisar:

  1. pwd — Exibe o caminho completo da pasta onde você está.
  2. ls — Lista arquivos e pastas.
  3. cd Documentos - Entra na pasta Documentos.
  4. cd .. - volta uma pasta.
  5. cd ~ - volta para o diretório pessoal.(home)
  6. mkdir projetos — Cria uma nova pasta.
  7. rm -r pasta - apaga uma pasta e seu conteúdo.
  8. cp arquivo.txt backup.txt - copia um arquivo.
  9. cp -r pasta1 pasta2 - copia uma pasta com tudo dentro.
  10. cat arquivo.txt - — Exibe o conteúdo de um arquivo.

O link para a videoaula é esse:

5 - COMANDOS ESSENCIAIS ANTES DAS INSTALAÇÕES

Se você acabou de instalar o Ubuntu via WSL 2 ou precisa instalar um novo programa, é bom começar com:

sudo apt update
Enter fullscreen mode Exit fullscreen mode

E depois, se quiser aplicar as atualizações de fato dando um:

sudo apt upgrade
Enter fullscreen mode Exit fullscreen mode

explicação: Porque dar esses comandos antes de começar as instalações? Rodar ambos os comandos antes de instalar qualquer pacote no WSL 2 é uma prática essencial por motivos técnicos e de segurança. Quando você instala o Ubuntu no WSL 2, ele vem com uma lista de pacotes desatualizada.
Se você não rodar sudo apt update, o sistema pode: não encontrar o Git (ou outro pacote), instalar versões antigas, ou gerar erros de dependência ao instalar.
Já o ‘sudo apt upgrade’ vai atualizar os pacotes que já estão no sistema, isso é importante para: corrigir bugs e falhas de segurança, garantir que tudo esteja compatível com os pacotes novos que serão instalados (como o Git).

6 - INSTALAÇÃO DO GIT

Vá ao Windows Terminal (no Ubuntu) e dê o comando para atualizar a lista de pacotes disponíveis nos repositórios.

sudo apt update
Enter fullscreen mode Exit fullscreen mode

Depois dê o comando para instalar as atualizações disponíveis dos pacotes listados

sudo apt upgrade
Enter fullscreen mode Exit fullscreen mode

Se ele perguntar se quer continuar a instalação aperte ‘y’ para ‘yes’ se ele perguntar:

Do you want to continue? [Y/n]
Enter fullscreen mode Exit fullscreen mode

Ok, agora que tomamos medidas seguras, vamos instalar o GIT de fato.

Para isso utilizaremos o comando:

sudo apt install git
Enter fullscreen mode Exit fullscreen mode

Para checar se o GIT foi de fato instalado podemos dar os seguintes comandos (de mesma função):

git -v
Enter fullscreen mode Exit fullscreen mode

ou

git --version
Enter fullscreen mode Exit fullscreen mode

Pronto, agora já temos o Git instalado!

7 - INSTALAÇÃO DO RUBY

Nós vamos instalar a nossa primeira versão do Ruby e todas as demais versões que quisermos utilizar depois de uma mesma maneira: Ruby Version Manager(RVM), ou seja, via Gerenciador de Versões do Ruby. Usa-se essa forma pois é bem mais eficiente do que as demais e mais fácil de gerenciar também.

Para isso, vamos lá:

  1. Abra o Windows Terminal.
  2. Dê os dois comandos de praxe que sempre damos antes de instalar qualquer coisa:
sudo apt update
Enter fullscreen mode Exit fullscreen mode

e

sudo apt upgrade
Enter fullscreen mode Exit fullscreen mode
  1. Vamos ao site oficial do RVM (Ruby Version Manager), na parte de instalação.
  2. Copie a chave GPG que estiver lá e cole no seu terminal.

'Image description'

A do nosso caso aqui é essa:

gpg --keyserver keyserver.ubuntu.com --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
Enter fullscreen mode Exit fullscreen mode
  1. Verifique que ele importou as chaves.

'Image description'

Importadas com sucesso. Vamos ao próximo passo.

  1. Retorne ao site do RVM, copie o comando à seguir e cole-o no terminal:

'Image description'

No nosso exemplo:

\curl -sSL https://get.rvm.io | bash
Enter fullscreen mode Exit fullscreen mode

Se tudo der certo, vai aparecer uma tela assim:

'Image description'

  1. Feche o Windows Terminal. Posteriormente a isso, abra-o novamente para tirar a prova real se a instalação do RVM deu certo ou não. Dê um:
rvm -v
Enter fullscreen mode Exit fullscreen mode

Se a instalação tiver sido bem sucedida vai aparecer isso aqui:

'Image description'

  1. Uma vez instalado o RVM podemos baixar a nossa primeira versão do Ruby. Vá ao site oficial da linguagem e veja qual é a current version do momento.

  2. Pegue a numeração da current version e aplique o seguinte comando no terminal (contendo essa versão):
    'rvm install '.

Exemplo prático, eu quero a versão 3.4.7:

 rvm install 3.4.7
Enter fullscreen mode Exit fullscreen mode

O processo de instalação será exibido no terminal.

'Image description'

  1. Dê um ‘rvm list’ para checar se a versão do Ruby que queremos foi instalada de fato.

'Image description'

8 - INSTALAÇÃO DO POSTGRESQL

  1. No Windows Terminal, digite:
sudo apt install postgresql postgresql-contrib libpq-dev
Enter fullscreen mode Exit fullscreen mode

Nota: Esse comando serve para instalar o PostgreSQL, os módulos adicionais (postgresql-contrib) e a biblioteca de desenvolvimento (libpq-dev).

Durante a instalação ele pede a senha do seu usuário do Ubuntu, bem como pergunta se você deseja seguir com o processo de instalação.

'Image description'

  1. Vamos checar a versão do PostgreSQL que foi instalada.

Para isso utilizamos o seguinte comando no terminal.

psql --version
Enter fullscreen mode Exit fullscreen mode
  1. Apesar de instalado o PostgreSQL ainda não está funcionando, para que ele funcione precisamos startá-lo.
    Mas antes disso precisamos setar uma nova senha para o SGBD.

  2. Alterando a senha do usuário postgres no sistema (usuário padrão do PostgreSQL).

Dê o comando:

sudo passwd postgres
Enter fullscreen mode Exit fullscreen mode

Insira a senha que deseja e depois repita-a e ele dará uma mensagem de sucesso.

  1. Startando o PostgreSQL

Para isso vamos dar o comando para startar o serviço:

sudo service postgresql start
Enter fullscreen mode Exit fullscreen mode

E depois vamos checar se o serviço/banco está ativo com um:

sudo service postgresql status
Enter fullscreen mode Exit fullscreen mode

'Image description'

  1. Entrando no PostgreSQL com o usuário postgres

Podemos acessar o console interativo do PostgreSQL (psql) como usuário postgres dando o seguinte comando:

sudo -u postgres psql
Enter fullscreen mode Exit fullscreen mode

Esse comando vai abrir o terminal, para trabalharmos com o PostgreSQL.

'Image description'

O banco já está funcionando e a instalação do PostgreSQL já foi concluída!

9 - INSTALAÇÃO DO VSCODE

Se você já tiver o VSCode instalado na sua máquina, no seu Windows mesmo, não há a necessidade de baixar uma nova versão no WSL 2. Vamos utilizar o VSCode baixado no Windows mesmo.

Caso ainda não possua o editor de código:

10 - CONFIGURANDO EXTENSÃO NO VSCODE

Abra o VSCode que foi instalado.
Uma vez neste clique neste botão para acessar as extensões:

'Image description'

Digite ‘WSL’ e instale a extensão indicada:

'Image description'

Há também outras 2 sugestões de extensões para quem trabalha com o VSCode e com o Ruby/Rails:

  • A Material Icon Theme - Para que o seu projeto, quando você abre no VSCode saia com aqueles ícones todos bonitinhos.

  • E essa aqui - Que muda as cores gerais do seu VScode.

'Image description'

11 - INSTALAÇÃO DO RAILS

Você pode instalar o Rails de maneira global no seu sistema. Mas não é uma prática recomendada. o ideal é instalar a versão do Rails especificamente na pasta de cada projeto.

Portanto, vamos começar criando uma pasta para os nossos projetos.

11.1 - Consultando o acesso as pastas em diferentes sistemas

Para evitar problemas de desempenho e de compatibilidade as pastas do nosso projeto NÃO serão criadas no Windows, ou seja, no caminho (/mnt/c/).

Vamos ao Windows Terminal para acessar a pasta do usuário no Ubuntu.

Para consultar essa pasta vamos dar o comando:

pwd
Enter fullscreen mode Exit fullscreen mode

Nota: Esse comando vem de print working directory e serve para mostrar a sua pasta atual e o caminho para ela. Ou seja, o comando localiza aonde você está dentro da hierarquia de pastas.

Por exemplo, ao dar esse comando no Ubuntu vamos ter:

'Image description'

Já no Windows esse caminho estará bem aqui:

'Image description'

11.2 - Criando a pasta para os seus projetos no Ubuntu

Para criar a pasta, escolha e navegue até a pasta mãe - onde deseja deixar os seus projetos Rails - e dê o comando 'mkdir + nome_da_pasta_do_seu_projeto'.

Exemplo:

mkdir Projetos
Enter fullscreen mode Exit fullscreen mode

11.3 - Mude para dentro da pasta que foi criada

Para isso utilize o comando:

cd Projetos
Enter fullscreen mode Exit fullscreen mode

Ou 'cd nomedasuapasta'

11.4 - Instalando o Rails na pasta de Projetos

O Rails além de ser um framework é uma Gem, logo é instalado como uma. Os pacotes no Ruby são Gems.

Aqui você pode acompanhar todas as versões do Rails.

  • Se quiser instalar uma versão mais específica do Rails, dê este comando no terminal:
gem install rails -v 8.0.1
Enter fullscreen mode Exit fullscreen mode
  • Se eu quiser instalar a versão mais recente e atualizada do Rails eu dou o comando:
gem install rails
Enter fullscreen mode Exit fullscreen mode

A instalação do Rails vai gerar algo semelhante a isso:

'Image description'

11.5 - Checando se o Rails foi instalado com sucesso

rails -v
Enter fullscreen mode Exit fullscreen mode

Dê um comando para consultar a versão do framework Rails.

'Image description'

12 - CRIANDO UM PROJETO NO RAILS NO VSCODE

Para criar um projeto no Rails dê o comando:

rails new nome_do_seu_projeto
Enter fullscreen mode Exit fullscreen mode

Você também pode deixar algumas coisas pré-definidas, como por exemplo o SGBD que será utilizado:

rails new meu_projeto --database=postgresql
Enter fullscreen mode Exit fullscreen mode

Ou deixar pré-definido se vai utilizar o Tailwind no projeto ou não:

rails new meu_projeto -d postgresql -c tailwind
Enter fullscreen mode Exit fullscreen mode

Vamos gerar o nosso próprio projeto aqui:

rails new teste --database=postgresql
Enter fullscreen mode Exit fullscreen mode
  • Aqui o projeto sendo criado:

'Image description'

  • Uma vez criado o projeto, se mude para dentro da pasta deste utilizando um 'cd teste'.

'Image description'

Posteriormente, abra o seu projeto com o Visual Studio Code e vá mexer nele. Edite-o como quiser. Para isso se utilize do comando: 'code .'

Repare que ele vai - na primeira vez que o VSCode abre ali - instalar o editor de código para o Linux x64:

'Image description'

Com isso, fico por aqui. Espero que tenham gostado da explicação sobre como instalar o setup para desenvolvimento em Ruby/Rails. Tentei deixar o mais detalhado possível, para evitar que as pessoas - mesmo as mais iniciantes em programação - consigam ter um bom entendimento desse processo de instalação da linguagem e dos demais componentes utilizados no desenvolvimento web com a linguagem.

Vejo vocês na próxima.

Tchau tchau.

Top comments (0)