仮想環境したい(nodeenv)

$ pip3 install nodeenv
$ nodeenv node_env
$ source node_env/bin/activate
(node_env) $ node --version
(node_env) $ deactivate_node

Nodeの仮想環境を構築できます。 MySTのようにNode依存があるパッケージも、Pythonパッケージと同じように環境構築できます。 CI環境と組み合わせて使います。

注釈

無効化コマンドはdeactivateではなくdeactivate_nodeです。 Pythonのvenvと混同しないように注意してください。

利用できるバージョンを確認したい

$ nodeenv --list

バージョンを指定したい(-n / --node)

$ nodeenv -n 20.0.0 node_env  // 特定バージョンを指定
$ nodeenv -n lts node_env     // 最新のLTS版を指定
$ nodeenv -n system node_env  // システムのnodeを使う

-n(--node)オプションで、インストールするNode.jsのバージョンを指定できます。 省略した場合は最新版(latest)がインストールされますが、 プロジェクトによってはバージョンを固定しておきたい場合が多いので、 -n ltsや具体的なバージョン番号を指定しておくのがオススメです。

Python仮想環境と統合したい(-p / --python-virtualenv)

$ python3 -m venv .venv
$ source .venv/bin/activate
(.venv) $ nodeenv -p

-p(--python-virtualenv)オプションで、 すでに有効化されているPythonの仮想環境(venv)に、Node.js環境を統合できます。 新しく仮想環境を作らず、既存の.venv/bin/activate(とactivate.fish)にNode.js用の設定が追記されます。

これにより、source .venv/bin/activateを1回実行するだけで、 PythonとNode.jsの両方の環境を同時に有効化できます。 MySTのように、PythonパッケージとNode依存パッケージを両方使うプロジェクトで便利です。

注意

-pオプションは、現在有効化されている仮想環境のactivateスクリプトを直接書き換えます。 間違った仮想環境を有効化した状態で実行しないように注意してください。