はじめに
Node.jsは、サーバーサイドプログラミング用のJavaScriptランタイムです。これにより、既に多くの開発者がブラウザベースのWeb開発で使っているJavaScriptを使って、スケーラブルなバックエンド機能を作成することができます。
このガイドでは、Rocky Linux 9サーバーにNode.jsをインストールするための3つの異なる方法を紹介します:
- Rockyのデフォルトのソフトウェアリポジトリから
dnf
を使用してnodejs
パッケージをインストールする方法 - Nodesourceソフトウェアリポジトリを使用して特定のバージョンの
nodejs
パッケージをインストールする方法 - Node.jsの複数のバージョンをインストールおよび管理するために、Node Version Manager(
nvm
)をインストールする方法
多くのユーザーにとっては、デフォルトのパッケージソースを使用したdnf
が十分です。特定の新しい(またはレガシー)バージョンのNodeが必要な場合は、Nodesourceリポジトリを使用してください。Nodeアプリケーションの開発を積極的に行い、頻繁にnode
のバージョンを切り替える必要がある場合は、nvm
メソッドを選択してください。
前提条件
このガイドでは、Rocky Linux 9を使用していることを前提としています。始める前に、システムに設定されたsudo
権限を持つ非rootユーザーアカウントを持っている必要があります。これについては、Rocky Linux 9初期サーバーセットアップチュートリアルに従って学ぶことができます。
オプション1 — デフォルトリポジトリからDNFを使用してNode.jsをインストールする
Rocky Linux 9には、複数のシステムで一貫したエクスペリエンスを提供するために使用できるNode.jsのバージョンがデフォルトリポジトリに含まれています。執筆時点では、リポジトリ内のバージョンは16.14.0です。これは最新バージョンではありませんが、言語の素早い実験には安定して十分です。
このバージョンを取得するには、dnf
パッケージマネージャーを使用できます:
- sudo dnf install nodejs -y
インストールが成功したかどうかを確認するために、node
にバージョン番号を問い合わせます:
- node -v
Outputv16.14.0
リポジトリ内のパッケージが必要な場合、これでNode.jsのセットアップが完了です。RockyのデフォルトリポジトリからのNode.jsパッケージには、Node.jsパッケージマネージャーであるnpm
も含まれています。これにより、Node.jsで使用するためのモジュールやパッケージをインストールすることができます。
この時点で、Node.jsとnpm
をデフォルトのRockyソフトウェアリポジトリを使用してdnf
で正常にインストールしました。次のセクションでは、別のリポジトリを使用して異なるバージョンのNode.jsをインストールする方法を示します。
オプション2 – NodeSourceリポジトリを使用してDNFでNode.jsをインストールする
異なるバージョンのNode.jsをインストールするには、NodeSourceリポジトリを使用できます。NodeSourceは公式のRockyリポジトリよりも多くのNode.jsのバージョンが利用可能なサードパーティのリポジトリです。執筆時点では、Node.js v14、v16、v18が利用可能です。
最初に、パッケージにアクセスするためにリポジトリをローカルで設定する必要があります。ホームディレクトリから、お好みのバージョンのインストールスクリプトを取得するためにcurl
を使用します。なお、お好みのバージョン文字列に応じて18.x
を置き換えてください。
- cd ~
- curl -sL https://rpm.nodesource.com/setup_18.x -o nodesource_setup.sh
利用可能なバージョンに関する詳細については、NodeSourceのドキュメンテーションを参照してください。
ダウンロードしたスクリプトの内容は、vi
(またはお好みのテキストエディタ)で確認できます。
- vi nodesource_setup.sh
サードパーティのシェルスクリプトを実行することは常にベストプラクティスとは言えませんが、この場合、NodeSourceは独自のロジックを実装して、ディストリビューションとバージョンの要件に基づいて正しいコマンドがパッケージマネージャーに渡されるようにしています。スクリプトが安全に実行できると確信している場合は、エディタを終了して、sudo
を使用してスクリプトを実行してください:
- sudo bash nodesource_setup.sh
Output…
## システムにはすでに別のソースからNode.jsがインストールされているようです。
Run `sudo yum remove -y nodejs npm` to remove these first.
## Node.js 18.xとnpmをインストールするには、`sudo yum install -y nodejs`を実行してください。
## yumが利用できない場合は、dnfを実行することもできます:
sudo dnf install -y nodejs
## ネイティブアドオンをビルドするためには開発ツールも必要かもしれません:
sudo yum install gcc-c++ make
## Yarnパッケージマネージャーをインストールするには、次のコマンドを実行してください:
curl -sL https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
sudo yum install yarn
リポジトリが設定に追加され、ローカルのパッケージキャッシュが自動的に更新されます。以前のセクションと同じ方法でNode.jsパッケージをインストールできるようになりました。新しいバージョンをインストールする前に、古いNode.jsパッケージを完全に削除することをおすすめします。これにより、設定は一切影響を受けず、インストールされているバージョンのみが削除されます。サードパーティのリポジトリは常にストックパッケージの直接のアップグレードとして機能するようにソフトウェアをパッケージ化しているわけではありません。問題が発生した場合は、常にクリーンな状態に戻すことを試してみることができます。
- sudo dnf remove nodejs npm -y
-
- ```command
- sudo dnf install nodejs -y
新しいバージョンが正しくインストールされたことを確認するには、node
コマンドを-v
オプションとともに実行してください:
- node -v
Outputv18.9.0
NodeSourceのnodejs
パッケージには、node
バイナリとnpm
の両方が含まれているため、別途npm
をインストールする必要はありません。
この時点で、Node.jsとnpm
をdnf
とNodeSourceリポジトリを使用して正常にインストールしました。次のセクションでは、Node Version Managerを使用して複数のバージョンのNode.jsをインストールおよび管理する方法を説明します。
オプション3 — Node Version Managerを使用したNodeのインストール
特に柔軟な方法として、Node Version Manager(nvm)を使用してNode.jsをインストールすることもできます。このソフトウェアを使用すると、複数の独立したNode.jsバージョンとそれに関連するNodeパッケージを同時にインストールおよび管理することができます。
Rocky Linux 9マシンにNVMをインストールするには、プロジェクトのGitHubページにアクセスしてください。メインページに表示されるREADMEファイルからcurl
コマンドをコピーします。これにより、最新バージョンのインストールスクリプトが取得されます。
bash
にコマンドをパイプする前に、スクリプトをオーディットして同意しない処理がないか確認することは常に良いアイデアです。これには、curl
コマンドの末尾の| bash
セグメントを削除することで行うことができます。
- curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh
変更内容に問題がないか確認してください。満足したら、コマンドを再度実行し、末尾に| bash
を追加してください。使用するURLは、nvmの最新バージョンに応じて変更されますが、現時点では以下のコマンドでスクリプトをダウンロードして実行できます:
- curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
これにより、nvm
スクリプトがユーザーアカウントにインストールされます。使用するには、まず.bashrc
ファイルをソースする必要があります:
- source ~/.bashrc
そして、NVMで利用可能なNodeのバージョンを確認できます:
- nvm list-remote
Output. . .
v16.13.1 (LTS: Gallium)
v16.13.2 (LTS: Gallium)
v16.14.0 (LTS: Gallium)
v16.14.1 (LTS: Gallium)
v16.14.2 (LTS: Gallium)
v16.15.0 (LTS: Gallium)
v16.15.1 (LTS: Gallium)
v16.16.0 (LTS: Gallium)
v16.17.0 (Latest LTS: Gallium)
v17.0.0
v17.0.1
v17.1.0
v17.2.0
…
非常に長いリストですね!リリースバージョンのいずれかを入力することで、Nodeのバージョンをインストールできます。たとえば、バージョンv16.16.0(LTSリリース)を取得するには、以下のコマンドを入力します:
- nvm install v16.16.0
インストールされている異なるバージョンは、以下のコマンドを入力することで確認できます:
nvm list
Output-> v16.16.0
system
default -> v16.16.0
iojs -> N/A (default)
unstable -> N/A (default)
node -> stable (-> v16.16.0) (default)
stable -> 16.16 (-> v16.16.0) (default)
lts/* -> lts/gallium (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.24.1 (-> N/A)
lts/erbium -> v12.22.12 (-> N/A)
lts/fermium -> v14.20.0 (-> N/A)
lts/gallium -> v16.17.0 (-> N/A)
これにより、現在アクティブなバージョンが最初の行に表示されます(-> v16.16.0
)、その後にいくつかのエイリアスと、それらのエイリアスが指すバージョンが表示されます。
注意:もしdnf
を使ってNode.jsのバージョンをインストールしている場合、ここにsystem
というエントリが表示されるかもしれません。いつでもnvm use system
を使用して、システムにインストールされたNodeのバージョンをアクティブにすることができます。
これらのエイリアスに基づいてリリースをインストールすることもできます。たとえば、fermium
をインストールするには、以下のコマンドを実行します:
- nvm install lts/gallium
OutputDownloading and installing node v16.17.0...
Downloading https://nodejs.org/dist/v16.17.0/node-v16.17.0-linux-x64.tar.xz...
################################################################################# 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v16.17.0 (npm v8.15.0)
他のセクションと同じテクニックを使って、インストールが成功したことを確認できます。以下のコマンドを入力して、正しいバージョンのNodeがインストールされているか確認できます:
- node -v
Outputv16.17.0
予想通り、正しいバージョンのNodeがマシンにインストールされています。互換性のあるnpm
のバージョンも利用可能です。
結論
Rocky LinuxサーバーでNode.jsを使うためのいくつかの方法があります。状況によって、上記の方法の中から最適なものを選択する必要があります。Rockyのリポジトリ内のパッケージ版を使用する方法が最も簡単ですが、nvm
やNodeSourceリポジトリを使用することで追加の柔軟性が得られます。
Node.jsでプログラミングする方法についての詳細は、当社のチュートリアルシリーズ「Node.jsでのコーディング方法」を参照してください。
Source:
https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-rocky-linux-9