Loading...

2023-10-23(月) 15:00

⚙️ Ubuntuでnvm、Node.js、pnpmの実行環境を構築する

UbuntuNode.js
Ubuntuでnvm、Node.js、pnpmの実行環境を構築してそれぞれのバージョンを確認するところまでを解説します。

目次

前提

この記事では以下を前提としています。

  • Ubuntu 22.04

この記事のゴール

この記事では、Ubuntu でNode.jsnvmpnpmを実行できる環境を作り、Node.jsnvmpnpmのコマンドでそれぞれのバージョンを確認するところまでをゴールとします。

nvm、pnpm について

nvm は、Node Version Manager の略で、Node.js の異なるバージョンをインストールし、管理するためのツールです。 プロジェクト毎(ディレクトリ毎など)に異なる Node.js のバージョンを使いたい場合や、グローバルに使いたいバージョンを管理する場合に便利なツールです。

nvm-sh / nvm

nvm allows you to quickly install and use different versions of node via the command line.

github.com

pnpmは、Node.js のパッケージ管理ツールで、npmと比べて主にディスクスペースの効率化と高速化を目指して設計されています。

pnpm

高速、かつディスク容量効率が良いパッケージマネージャー

pnpm.io

nvm をインストール

公式リポジトリにある手順で簡単にインストールできます。 まず以下を実行します。以下はcurlコマンドを使用して必要なパッケージをダウンロードし、そのあとbashコマンドで実行しています。

ターミナル
$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash

以下が実行結果です。

ターミナル
$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
 
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 15037 100 15037 0 0 38164 0 --:--:-- --:--:-- --:--:-- 38262
=> Downloading nvm from git to '/home/username/.nvm'
=> Cloning into '/home/username/.nvm'...
 
remote: Enumerating objects: 355, done.
remote: Counting objects: 100% (355/355), done.
remote: Compressing objects: 100% (302/302), done.
remote: Total 355 (delta 39), reused 169 (delta 28), pack-reused 0
Receiving objects: 100% (355/355), 216.09 KiB | 9.00 MiB/s, done.
Resolving deltas: 100% (39/39), done.
* (HEAD detached at FETCH_HEAD)
master
=> Compressing and cleaning up git repository
=> Appending nvm source string to /home/username/.bashrc
=> Appending bash_completion source string to /home/username/.bashrc
=> Close and reopen your terminal to start using nvm or run the following to use it now:
 
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion

上記の実行結果の最後に指示されている通り、以下のsourceコマンドで環境変数の設定を反映させます。

ターミナル
$ source ~/.bashrc

これでnvmが使用できるようになり、以下のようにnvmのバージョンを確認できます。

ターミナル
$ nvm --version
0.39.5

Node.js をインストールする

nvmを使うことで簡単に Node.js をインストールできます。まず、インストール可能な Node.js のバージョン一覧を確認してみます。 以下を実行します。大量のバージョンが表示されます。

ターミナル
$ nvm ls-remote
v0.1.14
v0.1.15
v0.1.16
 
# (...省略...)
 
v20.6.1
v20.7.0
v20.8.0
v20.8.1
v20.9.0   (Latest LTS: Iron)
v21.0.0
v21.1.0

表示された中から目的の Node.js のバージョンがあればそれを指定して以下のようにインストールすることができます。

ターミナル
$ nvm install v16.14.0
Downloading and installing node v16.14.0...
Downloading https://nodejs.org/dist/v16.14.0/node-v16.14.0-linux-x64.tar.xz...
############################################################################################################## 100.0%
 
Computing checksum with sha256sum
Checksums matched!
Now using node v16.14.0 (npm v8.3.1)
Creating default alias: default -> v16.14.0

Node.jsのバージョンを確認します。

ターミナル
$ node --version
v16.14.0

最新の LTS 版をインストールしたい場合は、以下のようにnvm install --ltsコマンドを実行します。

ターミナル
$ nvm install --lts

インストール済みのバージョンを確認するには、以下のようにnvm lsコマンドを実行します。

ターミナル
$ nvm ls

目的の Node.js のバージョンを特定のプロジェクトで指定して使いたい場合は、まず目的のプロジェクトのディレクトリに移動し、そこでnvm useコマンドを使用して設定します。

ターミナル
$ cd ~/workspace/my-project
$ nvm use v16.14.0

再度バージョンを確認すると、指定したバージョンになっていることが確認できます。

ターミナル
$ node --version
v16.14.0

以上でnvmを使ったNode.jsのインストールは完了です。

pnpm インストール

pnpm公式リポジトリに従ってインストールします。以下を実行します。

ターミナル
$ curl -fsSL https://get.pnpm.io/install.sh | sh -

以下が実行結果です。

ターミナル
$ curl -fsSL https://get.pnpm.io/install.sh | sh -
==> Downloading pnpm binaries 8.9.2
 WARN  using --force I sure hope you know what you are doing
Copying pnpm CLI from /tmp/tmp.QHUcCDgkHb/pnpm to /home/username/.local/share/pnpm/pnpm
Appended new lines to /home/username/.bashrc
 
Next configuration changes were made:
export PNPM_HOME="/home/username/.local/share/pnpm"
case ":$PATH:" in
  *":$PNPM_HOME:"*) ;;
  *) export PATH="$PNPM_HOME:$PATH" ;;
esac
 
To start using pnpm, run:
source /home/username/.bashrc

指示通りに以下を実行して環境変数の設定を反映します。

ターミナル
$ source /home/username/.bashrc

pnpmのバージョンを確認します。

ターミナル
$ pnpm -v
8.9.2

まとめ

以上で、Ubuntu でnvmNode.jspnpmの実行環境を構築することができました。それぞれコマンド1つ、2つ実行するだけで簡単にインストールできます。nvmを使うことで、Node.jsのバージョンを切り替えることができます。pnpmを使うことで、npmよりも高速にパッケージをインストールすることができます。Node.jsnvmpnpmのコマンドでそれぞれのバージョンを確認するところまでを解説しました。