今日は、もりけん塾で勉強会のあったnodenvの環境構築についてです。
こんにちは。Webコーダーのはるです。
所属している「もりけん塾」のnodenv勉強会をやっと追うことができたのでアウトプットします。
【もりけん塾・勉強会】nodenvの環境構築をしてみた
勉強会に出席できなかったので、もりけん先生が作ってくださったハンズオン資料を見て進めました。
ハンズオンで紹介されていた記事も参考にしました。
nodenvとは何か
Node.jsのバージョンを自動で切り替えてくれるツール。
先生のハンズオンには、
フロントエンド開発では
node
バージョンがプロジェクトごとに変わっていると頻繁に手動で変えなくてはならない or バージョン管理をしなくてはならない
nodenv
はそれを自動的に切り替えてくれる便利なもの & 流行り出している & 乗り換える人が多くなってきているのでお勧めしている
と書かれていました。知らないことばかりです。
プロジェクトごとにnodeのバージョンを自動で切り替えてくれるのはとても便利!
早速、導入していきます。
nodenvをインストールする
nodenvをgit cloneします。(GitHubより)
git clone git://github.com/nodenv/nodenv.git ~/.nodenv
無事に完了しました。
実行可能な状態にする
ビルドするというそうです。ターミナルで以下を入力しました。
cd ~/.nodenv && src/configure && make -C src
PATHを通す
コマンドが使用できるようにPATHを通します。
echo 'export PATH="$HOME/.nodenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(nodenv init -)"' >> ~/.zshrc
「PATHを通す」の意味が自分の中で曖昧だったので調べました。参考リンクによると、
実行ファイルを(ファイルが置いてある場所を指定しないで)ファイル名を指定するだけで実行できるようにする
と書かれていました。
コマンドの実行ファイルの場所を環境変数$PATHに追加しておくことで、シェルがファイルの場所を把握して、パスがなくてもファイル名だけでコマンドを実行できるようになるとのこと。
とにかく新しいコマンドを使用するためにPATHを通すのですね(こちらもわかりやすかった)
以下のコマンドで、環境変数$PATHに追加されているものを確認することができます。
echo $PATH
※ここで出てきた記載順が、コマンド実行の優先順位となる。
初期化、シェルの再起動
nodenv初期化
~/.nodenv/bin/nodenv init
シェルの再起動・・・これで新しいPATHの設定ファイルを反映させる
exec $SHELL -l
正しくインストールされたか確認
nodenvが正しくインストールされたか確認します。
nodenv --version
以下のように何かしらバージョンが出てくればOKです。
プラグインのインストール
nodenv-updateプラグインを入れると、nodenvのバージョンをアップグレードしてくれるコマンドを使用できます。
ディレクトリを作成して、GitHubからプラグインをcloneします。
cd ~/.nodenv
mkdir plugins
git clone https://github.com/nodenv/nodenv-update.git "$(nodenv root)"/plugins/nodenv-update
以下コマンドを使用して、nodenvとプラグインのアップデートが可能になりました。
nodenv update
nodenvを使用してみる!
nodenvが無事にインストールできたので、早速使用してみます。
globalに設定
PC全体にnodenvの推奨版を設定します。2021.08現在、バージョン14.17.5が推奨でした。
nodenv install 14.17.5
nodenv global 14.17.5 //globalに設定
localに設定
次に、特定のフォルダ内のnodenvを設定してみます。
//14.16.0に設定してみる
nodenv install 14.16.0
mkdir ~/Desktop/test
cd test
nodenv local 14.16.0
mkdirでデスクトップにtestディレクトリを作成→移動。そのディレクトリ内をバージョン14.16.0に設定しました。
設定できたか確認してみます。
ls -la
.node-version ができていたらOKだそうです。
シェルを立ち上げ直します。
exec $SHELL -l
globalとlocalを行き来して確認してみる
testディレクトリでnode -vすると、v14.16.0
Desktopでnode -vすると、v14.17.5
と、異なるバージョンを設定することができました!
あとがき
ずっと遅れをとっていましたが、やっと設定することができました。
かなり前に自分でnodeを入れていたのでバージョンが古くなっていたのも気になっていて..
推奨版に合わせられてホッとしました。
もりけん先生、ハンズオン資料ありがとうございました!
//
【もりけん塾で勉強しています】
もりけん先生(@terrace_tec)のHPはこちら