Introdução
asdf é uma ferramenta de interface de linha de comando, ou ferramenta CLI, para gerenciar diferentes versões de tempo de execução em várias linguagens de programação. Ele unifica todos os tempos de execução em um único arquivo de configuração e usa uma estrutura de plugin para gerenciar tudo com uma única ferramenta. Como exemplo, você pode instalar Node.js, mas então ter o asdf como um repositório central de plugins com cada plugin sendo mantido oficialmente ou por contribuidores da comunidade.
Neste tutorial, você instalará o núcleo do asdf e o plugin Node.js com dependências de compilação, que é o mínimo necessário para a funcionalidade. Em seguida, você instalará o Node.js e gerenciará a versão que deseja usar, dependendo do escopo desejado.
Pré-requisitos
- Um servidor Ubuntu 22.04, configurado de acordo com nosso guia de configuração inicial do servidor para Ubuntu 22.04, com um usuário não-root com privilégios
sudo
e um firewall ativado.
Passo 1 — Instalando o núcleo do asdf
O asdf depende da instalação de um núcleo que, por si só, não tem funcionalidade. O núcleo do asdf depende de plugins separados que são específicos para uma linguagem de programação ou programa específico. Mais comumente, é usado para instalar e gerenciar várias versões de uma linguagem de programação específica. Recomenda-se que você faça o download do núcleo do asdf com o git
, que vem instalado com o Ubuntu 22.04. Para obter a versão mais recente do asdf, clone o branch mais recente do repositório asdf:
- git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.10.2
O asdf requer uma instalação única dependendo da combinação de tipo de shell e método pelo qual foi baixado. Por padrão, o Ubuntu usa o Bash como seu shell, que utiliza o arquivo ~/.bashrc
para configuração e personalização. Para habilitar o uso do comando asdf
, você precisará adicionar a seguinte linha:
- echo ". $HOME/.asdf/asdf.sh" >> ~/.bashrc
Em seguida, certifique-se de que suas alterações sejam aplicadas à sua sessão atual:
- source ~/.bashrc
Nota: Se estiver usando o ZSH em vez do Bash, você pode adicionar a mesma linha, mas ao arquivo ~/.zshrc
em vez disso.
Com o núcleo instalado, agora você pode instalar o plugin.
Passo 2 — Instalando o Plugin asdf Node.js e Dependências de Compilação
Instalar o plugin para Node.js para asdf não é o mesmo que instalar o Node.js por si só. Isso ocorrerá no próximo passo. Como mencionado anteriormente, os requisitos mínimos para uma configuração asdf utilizável são o núcleo asdf e pelo menos um plugin. Uma vez que você instala este plugin, você pode usá-lo para instalar o tempo de execução que ele manipula.
Cada plugin asdf é mantido separadamente. Alguns são mantidos pela equipe central asdf, mas a maioria é mantida pela comunidade. Cada plugin asdf tem seu próprio repositório e dependências que precisam ser instaladas. Você deve verificar cada repositório de plugin, como com o repositório de plugin Node.js. Este plugin em particular é oficialmente mantido pela equipe asdf.
Para instalar o plugin, use o seguinte comando asdf plugin add
:
- asdf plugin add nodejs https://github.com/asdf-vm/asdf-nodejs.git
Para este plugin Node.js, as dependências são mencionadas na seção “Utilização” do arquivo “README”. Dentro dessa seção, as dependências explícitas estão vinculadas à seção oficial dos repositórios Node.js sobre a construção do Node.js. Isso deve ser feito manualmente porque o asdf é uma solução direcionada a vários sistemas operacionais, cada um com suas próprias dependências exclusivas e métodos para instalá-las. Isso também pode variar de plugin para plugin. Para este plugin no Ubuntu, é necessário instalar essas dependências. Comece atualizando o índice de origem do seu apt
:
- sudo apt update
Em seguida, você pode instalar as dependências necessárias:
- sudo apt install python3 g++ make python3-pip
Para este plugin Node.js, dependendo da versão que você precisa instalar, ele escolhe binários pré-compilados ou compila binários a partir do código-fonte. Se você escolher uma versão que requer compilação a partir do código-fonte, as dependências mencionadas anteriormente são necessárias.
Com o plugin instalado com sucesso, agora você pode instalar o Node.js.
Passo 3 — Instalando o Node.js
Você pode instalar várias versões do Node.js, escolhendo entre a mais recente ou qualquer versão especificada. Para instalar a versão mais recente do Node.js, insira o seguinte:
- asdf install nodejs latest
OutputTrying to update node-build... ok
Downloading node-v18.10.0-linux-x64.tar.gz...
-> https://nodejs.org/dist/v18.10.0/node-v18.10.0-linux-x64.tar.gz
Installing node-v18.10.0-linux-x64...
Installed node-v18.10.0-linux-x64 to /home/sammy/.asdf/installs/nodejs/18.10.0
Instalar a versão latest
é um atalho fornecido pelo asdf, não é uma versão especial. O asdf identifica e aplica versões pelos números exatos delas. Para instalar uma versão específica do Node.js, insira o seguinte:
- asdf install nodejs 16.16.0
OutputTrying to update node-build... ok
Downloading node-v16.16.0-linux-x64.tar.gz...
-> https://nodejs.org/dist/v16.16.0/node-v16.16.0-linux-x64.tar.gz
Installing node-v16.16.0-linux-x64...
Installed node-v16.16.0-linux-x64 to /home/sammy/.asdf/installs/nodejs/16.16.0
Com essas duas versões instaladas, você pode verificar todas as versões que possui com o seguinte comando:
- asdf list nodejs
Output 16.16.0
18.10.0
Além disso, se você quiser remover uma versão, pode usar o comando uninstall
com um alvo de versão específico:
- asdf uninstall nodejs 16.16.0
Agora que o Node.js está instalado, você pode escolher a versão que deseja ativar.
Passo 4 — Escolhendo a Versão Ativa do Node.js
O asdf pode definir a versão do Node.js em três níveis diferentes: local
, global
e shell
. Se você deseja definir a versão do Node.js apenas para o diretório de trabalho do seu projeto, execute o seguinte comando:
- asdf local nodejs latest
Definir a versão atual no nível global
atua no nível do usuário para o seu sistema:
- asdf global nodejs latest
Se você deseja definir a versão apenas para a sessão de shell atual, insira o seguinte comando:
- asdf shell nodejs latest
Agora você tem uma instalação completa do Node.js usando o asdf, com a capacidade de alternar para a versão que precisa no escopo desejado.
Conclusão
Neste tutorial, você instalou o núcleo do asdf, o plugin Node.js do asdf e, em seguida, o Node.js em si. O asdf permite a instalação de várias versões de um tempo de execução, e você pode escolher a versão em diferentes níveis de escopo, desde global até o diretório de projeto de trabalho. Se você estiver interessado em uma instalação convencional do Node.js, confira este tutorial sobre como instalar o Node.js no Ubuntu 22.04.