🦔

Voltaの導入

2024/01/05に公開

新卒で入った会社がnvmを使っていたので今までnvmを使っていたのですが、現在入っている案件でリポジトリによってnodeやnpmバージョンが異なっていてバージョン変更がめんどくさいため、voltaへ変更する。

Voltaとは?

Volta は、JavaScript コマンドライン ツールを簡単に管理する方法です。

https://docs.volta.sh/guide/

Voltaの特徴

高速: JS ツールを迅速かつシームレスにインストールして実行します。Volta は Rust で構築されており、動きの良い静的バイナリとして出荷されます。
信頼性:ワークフローを妨げることなく、プロジェクトの全員が同じツールを使用できるようにします。
ユニバーサル:パッケージ マネージャー、ノード ランタイム、または OS に関係なく、必要なのは 1 つのコマンドだけです

https://github.com/volta-cli/volta?tab=readme-ov-file

nvmの削除

しばらくは使われないと思われるのでnvm関係のものを削除する

rm -rf $NVM_DIR
brew uninstall nvm

Voltaのインストール

HomebrewでVoltaをインストール

brew install volta

voltaがインストールできているかを確認する

volta -v

> 1.1.1

環境変数を設定

volta setup

PATH開通の確認

下記レスポンスが返ってきたら通っている証拠

cat ~/.zshrc

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

SHELLの再起動

exec $SHELL -l

Voltaでnodeとnpmのインストール

volta install node
volta install npm

nodeとnpmがインストールできているかの確認

node -v

> v16.20.2
npm version

> {
>   npm: '10.2.5',
>   node: '16.20.2',
>   v8: '9.4.146.26-node.26',
>   uv: '1.43.0',
>   zlib: '1.2.11',
>   brotli: '1.0.9',
>   ares: '1.19.1',
>   modules: '93',
>   nghttp2: '1.47.0',
>   napi: '8',
>   llhttp: '6.0.11',
>   openssl: '1.1.1v+quic',
>   cldr: '41.0',
>   icu: '71.1',
>   tz: '2022f',
>   unicode: '14.0',
>   ngtcp2: '0.8.1',
>   nghttp3: '0.7.0'
> }

以上!

参考記事

https://qiita.com/YoshinoriKanno/items/1a41b840a68dea2fb7e7

Discussion