Node.jsは、サーバー側でJavaScriptコードを実行するように設計されたChromeのJavaScript上に構築されたクロスプラットフォームJavaScriptランタイム環境です。 Node.jsを使用すると、スケーラブルなネットワークアプリケーションを構築できます。
Node Package Managerの略であるnpmは、開発者がコードを共有および再利用するのに役立つNode.jsのデフォルトのパッケージマネージャーです。 また、オープンソースのNode.jsパッケージを公開するための世界最大のソフトウェアリポジトリを指します。
この記事では、CentOS 8にNode.jsとnpmをインストールする2つの異なる方法を説明します。ご使用の環境に最適なインストールオプションを選択してください。

CentOSリポジトリからNode.jsとnpmをインストールする

Node.jsおよびnpmは、標準のCentOSリポジトリからインストールできます。 執筆時点では、リポジトリ内のNode.jsバージョンはv10.xです。
次のコマンドを実行して、 nodejsパッケージを提供するモジュールをリストし、使用可能なストリームを確認します。
 yum module list nodejs 
出力は、nodejsモジュールが1つのストリームのみで使用可能であることを示しています。 ストリーム10はNode.jsバージョンを表します。
 CentOS-8 - AppStream Name Stream Profiles Summary nodejs 10 [d] common [d], development, minimal, s2i Javascript runtime 
nodejsパッケージは、4つの異なるプロファイルを提供します。 [d]マークされたデフォルトプロファイルは、ランタイムパッケージの共通セットをインストールします。
CentOSシステムにデフォルトのNode.jsパッケージをインストールするには、次のように入力します。
 sudo yum module install nodejs 
上記のコマンドもNPMをインストールします。
開発者の場合、開発プロファイルをインストールします。これにより、動的にロード可能なモジュールを構築するために必要な追加のライブラリもインストールされます。
 sudo yum module install nodejs/development 
インストールが完了したら、次を入力して確認します。
 node --version 
このコマンドは、Node.jsバージョンを表示します。
 v10.16.3 
これは、CentOS 8にNode.jsとnpmをインストールする最も簡単な方法であり、ほとんどのユースケースで十分です。

開発ツールのインストール

開発ツールは、npmレジストリからネイティブアドオンをコンパイルおよびインストールするために必要です。 次を実行してパッケージをインストールします。
 sudo dnf groupinstall 'Development Tools' 

Node.jsのアンインストール

何らかの理由でNode.jsおよびnpmパッケージをアンインストールする場合は、次のコマンドを使用します。
 sudo yum module install nodejs 

NVMを使用したNode.jsおよびnpmのインストール

NVM(ノードバージョンマネージャー)は、ユーザーごとに複数のNode.jsバージョンを管理できるbashスクリプトです。 NVMを使用すると、使用またはテストするNode.jsバージョンをインストールおよびアンインストールできます。
CentOSシステムにNVMをインストールするには、以下のコマンドを実行します。 rootユーザーのスクリプトを有効にするため、 sudoを使用しないでください。
 curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.0/install.sh | bash 
インストールスクリプトは、 NVMリポジトリをGithubから~/.nvmディレクトリに複製し、nvmパスをBashまたはZSHプロファイルに追加します。
 ... export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion 
nvmスクリプトの使用を開始するには、新しいシェルセッションを開くか、画面に印刷されたコマンドを実行します。 あなたにとってもっと簡単なことをしてください。

nvmスクリプトがCentOSで有効になったので、 nvmでNode.jsの最新の安定バージョンをインストールできます。
 nvm install node 
 ... Computing checksum with sha256sum Checksums matched! Now using node v13.0.1 (npm v6.12.0) Creating default alias: default -> node (-> v13.0.1) 
さらに2つのバージョン、最新のLTSバージョンとバージョン10.16.0をインストールしましょう。
 nvm install --lts nvm install 10.16.0 
インストールが完了したら、次のように入力して、インストールされているすべてのNode.jsバージョンを一覧表示できます。
 nvm ls 
 -> v10.16.0 v12.13.0 v13.0.1 default -> node (-> v13.0.1) node -> stable (-> v13.0.1) (default) stable -> 13.0 (-> v13.0.1) (default) iojs -> N/A (default) unstable -> N/A (default) lts/* -> lts/erbium (-> v12.13.0) lts/argon -> v4.9.1 (-> N/A) lts/boron -> v6.17.1 (-> N/A) lts/carbon -> v8.16.2 (-> N/A) lts/dubnium -> v10.17.0 (-> N/A) lts/erbium -> v12.13.0 
右側に矢印のあるエントリ(-> v10.16.0)は、現在のシェルセッションで使用されているバージョンです。 新しいシェルセッションを開くときに使用されるデフォルトバージョンはv13.0.1設定されていv13.0.1 。
現在アクティブなバージョンを変更する場合は、 v12.13.0次のv12.13.0を実行します。
 nvm use v12.13.0 
デフォルトのNode.jsをv12.13.0変更するには、 v12.13.0使用します。
 nvm alias default v12.13.0 

結論

Node.jsとnpmをCentOS 8にインストールする2つの異なる方法を示しました。選択する方法は、要件と設定によって異なります。
CentOS 8システムにNode.jsをインストールしたので、次はアプリケーションをデプロイします。
ご質問やご意見がありましたら、以下にコメントしてください。