🛠️

Nodeとnpmをセットアップしたりバージョンアップしたり

2021/04/13に公開
2

セットアップ

nodenv を homebrew でインストール

node の管理は nodenv を使うのが良い。nodebrew というのもあるが、ディレクトリごとに node のバージョンを切り替えられる nodenv の方が優秀。

$ brew install nodenv

これをすると、同時に node-build というプラグインもインストールされる。node-build はnodenv installを使えるようにする必須プラグイン。

nodenv のパスを通す

bash なら.bash_profileに、zsh なら.zshrcに以下を追記。

# nodenv
export PATH="$HOME/.nodenv/bin:$PATH"
eval "$(nodenv init -)"

追記したら Terminal を再起動するか、sourceで読み込み、バージョンチェックをして動作確認。

$ nodenv -v

インストール可能な node のバージョン一覧を表示

$ nodenv install --list

node のインストール

$ nodenv install [バージョン]
$ nodenv rehash
$ nodenv versions

同時に npm もインストールされる。

使用する node のバージョンを指定

$ nodenv global [バージョン]
$ nodenv local [バージョン]

$ node -v
$ npm -v

バージョンアップ

nodenv のバージョンアップ

$ brew update
$ brew upgrade nodenv

nodenv でインストール可能な node のバージョン一覧を更新

nodenv のプラグインである node-build-update-defs をインストールする。

$ git clone https://github.com/nodenv/node-build-update-defs.git "$(nodenv root)"/plugins/node-build-update-defs

インストールできる node のバージョン一覧を更新

$ nodenv update-version-defs

node のバージョンアップ

  1. 任意のバージョンの node を nodenv でインストール
  2. nodenv で環境に反映

npm 自体のバージョンアップ

$ npm install -g npm

npm updateではないのがキモ。

Discussion

KyomeKyome

dependabotで脆弱性が検出された時

  1. npm outdatedを実行してvulenabilitiesが何件あるかチェックする
  2. npm audit fixを実行する
    • vulenerabilitiesが0件になっていたらOK
    • vulenerabilitiesが1件以上あったらnpm audit fix --forceを実行する
  3. もしもモジュールのアップデートによりビルドが通らなくなっていたりしたらコードを修正する
KyomeKyome

↑ これだと脆弱性はなくせても、根本的に新しいバージョンには上がっていかない