LoginSignup
15
8

More than 1 year has passed since last update.

Volta のインストールと使い方

Last updated at Posted at 2022-04-19

数年前から anyenv と nodenv で node のバージョン管理を行なっていたのですが、結局 node しか使いませんでした。
この度、別環境を構築したのを機に、他の node バージョン管理ツールを使うことにしました。

いろいろ比べたのですが、volta が一番オシャレ(名前がオシャレ、公式サイトがオシャレ、使っている人がオシャレ:2022年4月時点での私感)だったので volta を採用しました。

※以前 Node や Node のバージョン管理ツールを使っていた人は Volta をインストールする前に削除しておいてください。

# 環境
# MacOS : Monterey 12.3.1
# SHELL : zsh
# Homebrew : 3.4.5

インストール

Homebrew から volta をインストールする

Homebrew からでなくともインストールできますが、Homebrew からのインストールした方がオシャレ度 UP ✨ です。

1. インストールと確認

brew install volta

volta -v

2. 環境変数を設定する

volta setup

参考 : https://docs.volta.sh/reference/setup

3. 一応 PATH の確認

cat ~/.zshrc

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

4. SHELL の再起動

exec $SHELL -l

5. node のインストールと確認

volta install node

node -v

v16.14.2

バッチリです✌️ 

* node のバージョンを指定してインストールする方法

volta install node@18.12.1

* のバージョンを指定してインストールする方法

volta install npm@8.19.2

使い方

プロジェクトで node のバージョンを固定する

0. プロジェクトディレクトリに移動して npm を初期化する

mkdir ~/project-directory && cd ~/project-directory

npm init -y

1. node のバージョンを固定してインストール

volta pin node@14.15.0

参考 : https://docs.volta.sh/reference/pin

確認

cat package.json 

{
  "name": "project-directory",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "volta": {
    "node": "14.15.0"
  }
}

14.15.0 で固定されています。

2. yarn もプロジェクトで固定

volta pin yarn

確認

cat package.json 
"volta": {
    "node": "14.15.0",
    "yarn": "1.22.18"
  }

インストールされている Node の確認

volta list all

User toolchain:

    Node runtimes:
        v14.15.0
        v16.14.2 (default)

    Package managers:
        npm:
            v8.7.0
        Yarn:
            v1.22.18

    Packages:
15
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
8