初めまして、iOSエンジニアの手嶋です。
弊社のエンジニアチームで共通のフロントエンド環境を作成するにあたり、iOSエンジニアの私もnodenvを使用してNode.jsを導入することになったため、今回はその導入手順について紹介しようと思います。
目次
nodenvについて
nodenvとはNode.jsのバージョンを管理するためのバージョン管理ツールです。
これを導入することにより、チーム開発をする上でバージョンを揃えた環境を構築することが可能になります。
導入方法
今回はmac環境での導入の説明となります。
また、前提としてhomebrewが入っているものとします。
現在のNode.jsのバージョンを確認
まずは現在設定されているNode.jsのバージョンを確認します。
$ node -v
既にNode.jsがインストールされている場合はインストールされているバージョンが表示され、未インストールの場合はエラーが返ってくると思います。
今回はこのコマンドで、任意のバージョンのNode.jsが表示されるようにすることをゴールとします。
nodenvのインストール
まずはhomebrewを使用し、下記のコマンドでnodenvをインストールします。
$ brew install nodenv
nodenvがインストールされたかを確認します。
$ nodenv -v
nodenv 1.4.0
nodeのインストール
次にnodenv経由でnodeをインストールします。
まずはインストール可能なnodeの一覧を表示します。
$ nodenv install --list
0.1.14
0.1.15
0.1.16
...
中略
...
16.13.0
...
中略
...
v8-canary
この中から今回は、16.13.0をインストールします。
$ nodenv install 16.13.0
インストールしたバージョンの確認は以下のコマンドで可能です。
$ nodenv versions
16.13.0
インストールしたnodeを削除したい場合は以下のコマンドで可能です。
$ nodenv uninstall {任意のnodeバージョン}
$ nodenv uninstall 16.13.0
また、globalやlocalの設定をすることで、PC全体でバージョンを適応させるかプロジェクトごとに適応するかを選べます。
$ nodenv global 16.13.0
$ nodenv local 16.13.0
nodenv local
を使用すると現在いるディレクトリに.node_versions
というファイルが生成され、そのファイル内に指定したnodeのバージョンが格納されます。
これにより、そのディレクトリでは.node_versions
に格納されたバージョンが参照されるようになります。
最後にターミナルが起動した際にnodeのバージョンが反映されるようにします。
次に最新のmac OSではデフォルトのターミナルがzshに変更されたため、.zshrc
を編集します。
export PATH=$HOME/.nodenv/bin:$PATH
eval "$(nodenv init -)"
これでターミナルが起動する度にnodenvで設定したnodeが反映されるようになります。
最後に現在設定されているNode.jsのバージョンを確認します。
$ node -v
v16.13.0
表示されるNode.jsのバージョンが、nodenvで選択したものと一致すれば作業は完了です。
最後に
今回はnodenvを使用して特定のバージョンのnodeの導入する方法を紹介しました。
チーム開発などで使用するライブラリのバージョンを揃える必要が出た際にご参考になれば幸いです。