Введение
asdf – это инструмент интерфейса командной строки, или CLI-инструмент, для управления различными версиями времени выполнения на разных языках программирования. Он объединяет все среды выполнения под одним конфигурационным файлом и использует структуру плагинов для управления всем этим одним инструментом. В качестве примера, вы можете установить Node.js, а затем использовать asdf в качестве центрального репозитория плагинов, причем каждый плагин поддерживается либо официально, либо сообществом.
В этом руководстве вы установите ядро asdf и плагин Node.js с зависимостями для сборки, что является минимальным необходимым для функциональности. Затем вы установите Node.js и управляете версией, которую хотите использовать, в зависимости от вашего желаемого объема.
Предварительные требования
- Сервер Ubuntu 22.04, настроенный в соответствии с нашим руководством по начальной настройке сервера для Ubuntu 22.04, с непривилегированным пользователем root с правами
sudo
и включенным брандмауэром.
Шаг 1 — Установка ядра asdf
asdf зависит от установки ядра, которое само по себе не обладает функциональностью. Ядро asdf зависит от отдельных плагинов, которые специфичны для определенного языка программирования или программы. Обычно его используют для установки и управления несколькими версиями определенного языка программирования. Рекомендуется загрузить ядро asdf с использованием git
, который поставляется вместе с Ubuntu 22.04. Чтобы получить последнюю версию asdf, клонируйте последнюю ветку из репозитория asdf:
- git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.10.2
asdf требует уникальной установки в зависимости от сочетания типа оболочки и способа его загрузки. По умолчанию Ubuntu использует Bash для своей оболочки, которая использует файл ~/.bashrc
для конфигурации и настройки. Чтобы включить использование команды asdf
, вам нужно добавить следующую строку:
- echo ". $HOME/.asdf/asdf.sh" >> ~/.bashrc
Затем убедитесь, что ваши изменения применены к текущей сессии:
- source ~/.bashrc
Примечание: Если вы используете ZSH вместо Bash, вы можете добавить ту же строку, но в файл ~/.zshrc
вместо этого.
С установленным ядром вы можете теперь устанавливать плагины.
Шаг 2 — Установка плагина Node.js для asdf и зависимостей сборки
Установка плагина для Node.js для asdf не тоже самое, что установка самого Node.js. Это произойдет на следующем шаге. Как упоминалось ранее, минимальные требования для рабочей настройки asdf включают в себя основной компонент asdf и по меньшей мере один плагин. После установки этого плагина, вы сможете использовать его для установки управляемого им времени выполнения.
Каждый плагин asdf поддерживается отдельно. Некоторые поддерживаются основной командой asdf, но большинство поддерживается сообществом. У каждого плагина asdf есть свой репозиторий и зависимости, которые необходимо установить. Вы должны проверить репозиторий каждого плагина, например, с репозиторием плагина Node.js. Этот конкретный плагин официально поддерживается командой asdf.
Для установки плагина используйте следующую команду asdf plugin add
:
- asdf plugin add nodejs https://github.com/asdf-vm/asdf-nodejs.git
Для этого плагина Node.js зависимости указаны в разделе «Использование» файла «README». В этом разделе явно указаны зависимости, которые связаны с разделом официальных репозиториев Node.js по сборке Node.js. Это необходимо выполнять вручную, потому что asdf представляет собой решение, ориентированное на несколько операционных систем, каждая из которых имеет свои уникальные зависимости и методы их установки. Это также может различаться от плагина к плагину. Для этого плагина на Ubuntu вам нужно установить эти зависимости. Начнем с обновления индекса исходных файлов apt
:
- sudo apt update
Затем вы можете установить необходимые зависимости:
- sudo apt install python3 g++ make python3-pip
Для этого плагина Node.js, в зависимости от версии, которую вам нужно установить, выбираются либо предварительно скомпилированные бинарные файлы, либо компилируются бинарные файлы из исходного кода. Если вы выбрали версию, которая требует компиляции из исходного кода, требуются упомянутые зависимости.
После успешной установки плагина вы можете установить Node.js.
Шаг 3 — Установка Node.js
Вы можете установить несколько версий Node.js, выбрав последнюю или любую указанную версию. Чтобы установить последнюю версию Node.js, введите следующее:
- 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
Установка latest
версии – это быстрый способ, предоставленный asdf, это не специальная версия. asdf определяет и применяет версии по их точным номерам. Чтобы установить определенную версию Node.js, выполните следующее:
- 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
После установки этих двух версий вы можете проверить все версии, которые у вас есть, используя следующее:
- asdf list nodejs
Output 16.16.0
18.10.0
Кроме того, если вы когда-нибудь захотите удалить версию, вы можете использовать команду uninstall
с указанием конкретной версии:
- asdf uninstall nodejs 16.16.0
Теперь, когда Node.js установлен, вы можете выбрать активную версию.
Шаг 4 — Выбор активной версии Node.js
asdf может устанавливать версию Node.js на трех разных уровнях: local
, global
и shell
. Если вы хотите установить версию Node.js только для рабочего каталога вашего проекта, выполните следующее:
- asdf local nodejs latest
Установка текущей версии на уровне global
действует на уровне пользователя для вашей системы:
- asdf global nodejs latest
Если вы хотите установить версию только для текущей оболочки, введите следующее:
- asdf shell nodejs latest
Теперь у вас полностью установлена Node.js с использованием asdf, с возможностью переключения на нужную версию в нужном вам диапазоне.
Заключение
В этом руководстве вы установили ядро asdf, плагин asdf для Node.js, а затем сам Node.js. asdf позволяет устанавливать несколько версий среды выполнения, и вы можете выбрать версию на разных уровнях области от глобальной до рабочего каталога проекта. Если вас интересует стандартная установка Node.js, посмотрите наше руководство по установке Node.js на Ubuntu 22.04 здесь.