DEV Community

Paulo Victor for Devhat

Posted on

Instalando de maneira rápida e eficiente suas ferramentas no WSL. Pt-3

Opa meu chegado, pronto para a ultima parte desses serie?
Spawnou do nada aqui e não sabe do que se trata ? Clica aqui e vai para o 1 guia dessa serie incrível

Agora vamos configurar algumas das ferramentas mais utilizadas pela minha pessoa, caso não se interesse por alguma ignore e continue o tutorial

NVM

Node version manager é hoje a melhor e mais rápida opção para se instalar o node na sua maquina

Rode o seguinte comando no seu terminal para

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
Enter fullscreen mode Exit fullscreen mode

Após rodar o comando de instalação e a mesma tiver acabado, rode o comando reset para aplicar as novas mudanças no seu terminal e conseguir usar o nvm corretamente

Instale a versão lst mais recente

Vamos rodar um comando no terminal para poder instalar a versão mais recente do node LTS

nvm install --lts
Enter fullscreen mode Exit fullscreen mode

Caso queira saber mais sobre o nvm e seus comando, clique aqui

PNPM

O node por padrão vem com o npm como seu gerenciador de pacotesm, mas o pnpm veio para ser mais rápido e otimizado que o npm.

Instalar mais recente

Rodamos o seguinte comando:

npm i -g pnpm
Enter fullscreen mode Exit fullscreen mode

Instalar uma versão especifica

Informe a versão base especifica:

npm i -g pnpm@8
Enter fullscreen mode Exit fullscreen mode

Alias Pn

Esse é um alias que pode ser inserido no .zshrc para 'facilitar' o seu uso.

alias pn=pnpm
Enter fullscreen mode Exit fullscreen mode

Rode o comando reset e já pode usar o pnpm

Caso queira saber mais clique aqui

CLI GITHUB

Uma grande parte das pessoas usam o github como local para armazenas seus códigos, sejam no trabalho ou estudo, se você é estudante e não coloca seus codigos no github, é interessante que tu bote.
A cli do github foi criada para conseguirmos fazer o que fazemos na web com alguns comando no terminal, como criar um repositório, clonar a branch de um PR e assim por diante

Instalar o CLI

Para instalar rode o seguinte comando no terminal:

(type -p wget >/dev/null || (sudo apt update && sudo apt-get install wget -y)) \
&& sudo mkdir -p -m 755 /etc/apt/keyrings \
&& wget -qO- https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo tee /etc/apt/keyrings/githubcli-archive-keyring.gpg > /dev/null \
&& sudo chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg \
&& echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null \
&& sudo apt update \
&& sudo apt install gh -y
Enter fullscreen mode Exit fullscreen mode

Logar no GitHub

É necessário logar com usa conta do github, necesse processo de login, o github cli nos ajuda cadastrando uma chave ssh, que ja vai ficar integrada no nosso wsl, para começar o processo rode o comando a seguir no terminal:

gh auth login
Enter fullscreen mode Exit fullscreen mode

Image description

Na segunda etapa da configuração é importante que você selecione a opção SSH, pois ela é a responsavel por conseguimos cadastrar uma chave ssh de maneira facilitada

Image description

Na quarta etapa de configuração você pode escolher ter uma senha para sua chave SSH ou não, eu particularmente recomendo não ter, pois toda vez que voce realizar um commit ela vai pedir confirmação:

Image description

Por fim basta selecionar o tipo de autenticação que deseja usar para validar sua conta:

Image description

Caso seu google do linux abra pode se logar por ele e inserir o código que foi exibido no terminal, ao final da autorização feche o navegador e ele validará normalmente

Finalizando essa etapa, recomendo fortemente que defina seu nome e email(de preferencia o mesmo do github) nas configuraçoes do git:

git config --global user.name "Seu Nome"

git config --global user.email "seuemail@exemplo.com"
Enter fullscreen mode Exit fullscreen mode

Caso você use o vscode como seu editor de código principal, recomendo fortemente definir ele como seu editor padrão do git:

git config --global core.editor "code --wait"
Enter fullscreen mode Exit fullscreen mode

Manual | GitHub CLI

Complete command

Se você quiser ter uma lista facilitada dos comandos da github cli, rode o comando sudo su para entrar no super terminal do linux e digite o seguinte comando:

gh completion -s zsh > /usr/local/share/zsh/site-functions/_gh
Enter fullscreen mode Exit fullscreen mode

Rode o comando exit para sair desse terminal, agora vá até o nosso arquivo de configuração do bash(.zshrc) e insira o comando a seguir nele:

autoload -U compinit
compinit -i
Enter fullscreen mode Exit fullscreen mode

No final ele vai ficar assim no .zshrc:

Image description

Resete o seu terminal com o comando previamente configurado ou reinicie o terminal e digite gh, ela vai aparecer assim:

Image description

Docker

Essa é uma das principais ferramentas para o gerenciamento de container no mercado.

Instalação

Os passos que iremos fazer será para a configuração do docker em um ambiente ubuntu, caso queira fazer em outro SOLinux de sua preferência acesse aqui.

Limpar de package

Esse comando é necessário para remover algum package que vai conflitar com a instalação do seu docker cli

for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
Enter fullscreen mode Exit fullscreen mode

Definição do repo do docker

Algumas intalações do linux são feitas com base em suas versões encontradas nos repositórios de cada projeto, agora iremos configurar o do docker:

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
Enter fullscreen mode Exit fullscreen mode

Instalar ultima versão

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Enter fullscreen mode Exit fullscreen mode

Instalar versão especifica

Aqui você vai precisar listar as versões disponiveis

# List the available versions:
apt-cache madison docker-ce | awk '{ print $3 }'
Enter fullscreen mode Exit fullscreen mode

Depois de escolher uma versão, copie o nome dela e jogue na variavel e rode o comando

# Variavel
VERSION_STRING=5:24.0.0-1~ubuntu.22.04~jammy

# Comando
sudo apt-get install docker-ce=$VERSION_STRING docker-ce-cli=$VERSION_STRING containerd.io docker-buildx-plugin docker-compose-plugin
Enter fullscreen mode Exit fullscreen mode

Verificando

Para verificar se a instalação foi um sucesso rode o comando sudo docker run hello-world, seu terminal vai ficar assim:

Image description

Eu recomendo fortemente que você rode o comando docker run -it ubuntu bash, para tentar usar o terminal dentro de uma imagem ubuntu, se surgir algum erro como esse:

Image description

Rode sudo usermod -aG docker $USER no terminal linux e reinicie o wsl pelo powershell admin com o comando wsl --shutdown e tente rodar novamente o comando do docker.

Em alguns casos é preciso ficar ativando o docker toda vez que entrar no wsl, não necessito fazer isso, mas caso o seu linux exiba:

Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

Você precisará rodar sudo service docker start toda vez que for usar o mesmo

É MUITO IMPORTANTE TOMAR CUIDADO PARA NÃO DEIXAR MUITOS CONTAINERS ATIVOS NO SEU PC

ASDF

Asdf é um gerenciador de versões de linguagens direto na sua cli, você consegue instalar go, ruby e node com ele.

Instalação

git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.14.0
Enter fullscreen mode Exit fullscreen mode

Após rodar esse comando, adicione a seguinte linha de codigo no .zshrc

. "$HOME/.asdf/asdf.sh"
Enter fullscreen mode Exit fullscreen mode

No deve ficar assim no seu .zshrc:

Image description

Caso queira saber mais sobre o asdf clique aqui

Go

Golang, linguagem criada pelo Google em 2009, destaca-se por sua simplicidade, velocidade, confiabilidade e suporte à concorrência. Ideal para diversos tipos de aplicações, desde servidores web até sistemas embarcados. Curva de aprendizado e menor quantidade de bibliotecas são pontos a serem considerados. Comunidade ativa e diversos recursos facilitam o aprendizado.

Instalação

Pra instalar o GO vamos usar o asdf previamente instalado

asdf plugin-add golang
asdf install golang 1.21.5
asdf global golang 1.21.5
asdf shell golang 1.21.5
Enter fullscreen mode Exit fullscreen mode

Pra ver se está tudo ok e rode um go version se o retorno for parecido com o da imagem está tudo ok

Image description

Parabêns

Agora você tem um WSL, configurado e pronto para contibuir com a comunidade opensource ou fazer seus projetos pessoais, saiba que a jornada no linux é cheia de altos e baixo, qualquer duvida pergunte para alguem em um forum/comunidade que participa e com certeza alguem vai te ajudar, caso queira adaptar esse guia para seu caso especifico é só clonar ele com o comando `` e ser feliz.

Muito obrigado por ficar até aqui, não deixe de ver a sessão abaixo.

Me siga e siga a devhatt nas redes sociais, fique alerta para mais conteúdos, quem sabe não tem algum extra 🤠

Top comments (0)