2021/06/24

VoltaでNode.js・npmの環境構築をする

@ taichi fukumoto

VoltanpmNode.js

この記事では、「Volta」を使用してNode.js・npmの環境構築を行います。
「Volta」とはJavaScriptツールマネージャーです。
Node.jsやnpmのバージョン管理を行うことができます。

Voltaの特徴

Voltaの特徴を見てみましょう。
公式サイトに書いてあることを和訳しています。

Fast|速い

あらゆるJSツールを迅速かつシームレスにインストールして実行できます。VoltaはRustで作られており、洗練された静的なバイナリとして出荷されます。

Voltaは、Rust製で他のバージョン管理ツールより動作が高速です。

Reliable|堅実

ワークフローを妨げることなく、プロジェクトに参加する全員が同じツールを使えるようにする。

Voltaを使用することで、簡単にプロジェクトメンバーが同じバージョンのNodeを使えるように設定することができます。

Universal|ユニバーサル

パッケージマネージャ、Nodeランタイム、OSを問わず、必要なのはvolta installという1つのコマンドだけです。

Windows・Mac・Linux。どのOSでも作動します。

Voltaをインストールする

Voltaのインストールは簡単です。OSはMac・Linux(WSL含む)であればOKです。(Windowsは別)
以下のコマンドを実行しましょう。

curl https://get.volta.sh | bash

上記のコマンドでパスも同時に通してくれます。
.zshrcファイルを覗いてみて、以下のようなパス設定が書き込まれていればOKです。

export VOLTA_HOME="$HOME/.volta"
export PATH="$VOLTA_HOME/bin:$PATH"

一度ターミナルを再起動し、voltaコマンドが使えるかどうかを確認します。

volta help

コマンドはなんでも良いのですが、volta helpを実行してVoltaの使い方が表示されればOKです。

Nodeをインストールする

Voltaコマンドが使えるようになったので、Nodeをインストールします。
volta install 〇〇でインストールすることができます。
v16のNodeをインストールしてみましょう。
@16@14といったように細かいバージョンを指定しなければ、そのバージョンの安定バージョンがインストールされます。

volta install node@16

Nodeがインストールされていることを確認しましょう。

node -v

> v16.3.0

バージョンが表示されればOKです。

npmをインストールする

Nodeをインストールした時点でnpmコマンドも使えるようになりますので、個別でインストールは必要ありません。
コマンドで確認してみましょう。

npm -v

> 7.15.1

このようにバージョンが表示されればOKです。
以上で、Voltaを使ったNode.js、npmの環境構築は完了です。お疲れ様でした。

Voltaの便利なコマンド

volta install

volta installは、インストールやデフォルトの切り替えに使用します。

特定のバージョンをインストールする

特定のバージョンをインストールすることもできます。

volta install node@14.15.5

次の例のように細かいバージョンを省略すると、指定したバージョンの中で最適なものをインストールします。

volta install node@14

最新のバージョンをインストールする

最新版をインストールするときはlatestを使います。

volta install node@latest

stalbe版をインストールする

@以降を省略すると、その時の最新の安定板をインストール可能です。

volta install node

デフォルトバージョンを切り替える

volta installコマンドでは、デフォルトのバージョンを切り替えることができます。
以下の例では、2つのNodeのバージョンがインストールされいている状態で、volta installコマンドを使用してデフォルトのバージョンを切り替えています。

#2つのバージョンがインストールされいている
> v14.17.1
> v16.3.0 (default)

node -v
> v16.3.0

#デフォルトバージョンを切り替え
volta install node@14.17.1

node -v 
> 14.17.1

volta pin

volta pinコマンドを使ってプロジェクトで使用するNode・npmのバージョンを選択することができます。
以下のコマンドをプロジェクトフォルダで実行します。

volta pin node@12.20
volta pin yarn@1.19

すると、package.jsonvoltaの設定が書き込まれます。

"volta": {
 "node": "12.20.2",
 "yarn": "1.19.2"
}

この設定が書き込まれたpackage.jsonをGithubなどで共有することで、プロジェクトに参加するメンバー全員が、指定のNodeやnpmのバージョンを自動的に取得することができます。

volta list

volta listコマンドを使用すると、Voltaによって管理しているNodeランタイムやパッケージマネージャー及びパッケージを一覧表示することができます。

#インストールされているNodeランタイムのバージョンを表示
volta list node

#Voltaで管理している全てを表示
volta list all

よく使うのはこれくらいですかね。
さらに詳しく知りたい人は、公式ドキュメントを参照してください。一度くらい目を通しましょう。

© 2021 powerd by UnReact