序章

Node.js は、サーバー側プログラミング用のJavaScriptランタイムです。 これにより、開発者はJavaScriptを使用してスケーラブルなバックエンド機能を作成できます。JavaScriptは、ブラウザーベースのWeb開発で多くの人がすでに知っている言語です。

このガイドでは、3つの異なる方法でNode.jsをDebian10サーバーにインストールする方法を学習します。

  • デフォルトのDebianリポジトリを使用する
  • PPAソフトウェアリポジトリの使用
  • NVM(Node Version Manager)を使用して、さまざまなバージョンのNodeをインストールしてアクティブ化します。

多くのユーザーにとって、デフォルトのリポジトリでaptを使用するだけで十分です。 Nodeの特定の新しい(またはレガシー)バージョンが必要な場合は、PPAリポジトリを使用する必要があります。 ノードアプリケーションを積極的に開発していて、バージョンを頻繁に切り替える必要がある場合は、NVM方式を選択してください。

前提条件

始める前に、システムにsudo権限を持つroot以外のユーザーを設定する必要があります。 これを設定する方法は、Debian10チュートリアルの初期サーバー設定に従うことで学ぶことができます。

デフォルトのリポジトリからAptを使用してNode.jsをインストールする

Debianのデフォルトのリポジトリには、複数のシステム間で一貫したエクスペリエンスを提供するために使用できるバージョンのNode.jsが含まれています。 執筆時点では、リポジトリ内のバージョンは10.24.0です。 これは最新バージョンではありませんが、安定していて、言語をすばやく試すのに十分なはずです。

警告: Debian 10、バージョン10.24.0に含まれているNode.jsのバージョンはサポートされておらず、メンテナンスもされていません。 このバージョンを本番環境で使用しないでください。また、このチュートリアルの他のセクションの1つを参照して、より新しいバージョンのNodeをインストールする必要があります。

デフォルトのDebianソフトウェアリポジトリからNode.jsを取得するには、aptパッケージマネージャーを使用できます。 まず、ローカルパッケージインデックスを更新します。

  1. sudo apt update

次に、Node.jsパッケージをインストールします。

  1. sudo apt install nodejs

インストールが成功したことを確認するには、nodeコマンドを-vフラグとともに実行して、バージョンを取得します。

  1. node -v
Output
v10.24.0

リポジトリ内のパッケージがニーズに合っている場合は、Node.jsを設定するために必要なのはこれだけです。 ほとんどの場合、Node.jsパッケージマネージャーであるnpmもインストールする必要があります。 これを行うには、npmパッケージをaptとともにインストールします。

  1. sudo apt install npm

これにより、Node.jsで使用するモジュールとパッケージをインストールできるようになります。

この時点で、aptとデフォルトのUbuntuソフトウェアリポジトリを使用してNode.jsとnpmを正常にインストールできました。 次のセクションでは、代替リポジトリを使用してさまざまなバージョンのNode.jsをインストールする方法を示します。

NodeSourcePPAを使用したAptでのNode.jsのインストール

Node.jsの最新バージョンを使用するには、NodeSourceによって管理されているPPA(パーソナルパッケージアーカイブ)からインストールできます。 これは、aptで引き続き機能する代替リポジトリであり、公式のDebianリポジトリよりも最新バージョンのNode.jsが含まれます。 NodeSourceには、複数のノードバージョンで使用可能なPPAがあります。 使用可能なバージョンの詳細については、NodeSourceのドキュメントを参照してください。

ホームディレクトリから、curlを使用して、希望するNode.jsバージョンのインストールスクリプトを取得します。 curlがインストールされていない場合は、次のコマンドを使用して次の手順に進む前にインストールできます。

  1. sudo apt install curl

curlをインストールすると、Node.jsのインストールを開始できます。 この例では、バージョン16.xをインストールします。 16.xをお好みのバージョンに置き換えることができます。

  1. curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
  2. sudo apt install nodejs

この場合、nodejsパッケージに含まれているため、npm用に別のパッケージをインストールする必要はありません。

-vバージョンオプションを指定してnodeを実行し、インストールを確認します。

  1. node -v
Output
v16.14.2

npmは、ホームディレクトリの構成ファイルを使用して更新を追跡します。 npmを初めて実行したときに作成されます。 次のコマンドを実行して、npmがインストールされていることを確認します。

  1. npm -v
Output
8.5.0

NodeVersionManagerを使用したノードのインストール

aptを介してNode.jsをインストールする代わりに、「NodeVersionManager」の略であるnvmと呼ばれるツールを使用することもできます。 nvmは、オペレーティングシステムレベルではなく、ユーザーのホームディレクトリ内の独立したディレクトリのレベルで機能します。 これは、システム全体に影響を与えることなく、Node.jsの複数の自己完結型バージョンをインストールできることを意味します。

nvmを使用して環境を制御すると、以前のリリースを保持および管理しながら、Node.jsの最新バージョンにアクセスできます。 これはaptとは異なるユーティリティですが、それを使用して管理するNode.jsのバージョンは、aptを使用して管理するバージョンとは異なります。

Debian10にnvmをインストールするには、NVMGithubリポジトリREADMEファイルのインストール手順に従ってください。

nvmの最新バージョンによってURLが変わる場合がありますが、この記事の執筆時点では、次のように入力することでスクリプトをダウンロードして実行できます。

  1. curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash

これにより、nvmスクリプトがユーザーアカウントにインストールされます。 これを使用するには、最初に.bashrcファイルを入手する必要があります。 これにより、コードを実行できます。

  1. source ~/.bashrc

これで、nvmを使用して利用可能なノードバージョンを一覧表示できます。

  1. nvm list-remote

このコマンドは長い出力を生成します:

Output
... v15.11.0 v15.12.0 v15.13.0 v15.14.0 v16.0.0 v16.1.0 v16.2.0 v16.3.0 v16.4.0 v16.4.1 v16.4.2 v16.5.0 v16.6.0 v16.6.1 v16.6.2 v16.7.0 v16.8.0 v16.9.0 v16.9.1 v16.10.0 v16.11.0 v16.11.1 v16.12.0 v16.13.0 (LTS: Gallium) v16.13.1 (LTS: Gallium) v16.13.2 (LTS: Gallium) v16.14.0 (LTS: Gallium) v16.14.1 (LTS: Gallium) v16.14.2 (Latest LTS: Gallium) v17.0.0 v17.0.1 ...

表示されているリリースバージョンのいずれかを入力することで、Nodeのバージョンをインストールできます。 たとえば、バージョン v14.10.0 をインストールするには、次のように入力します。

  1. nvm install v14.10.0

次のように入力すると、インストールしたさまざまなバージョンを表示できます。

  1. nvm ls
Output
-> v14.10.0 system default -> v14.10.0 iojs -> N/A (default) unstable -> N/A (default) node -> stable (-> v14.10.0) (default) stable -> 14.10 (-> v14.10.0) (default) ...

これは、最初の行に現在アクティブなバージョン(-> v14.10.0)を示し、その後にいくつかの名前付きエイリアスとそれらのエイリアスが指すバージョンが続きます。

注: aptを介してNode.jsのバージョンもインストールされている場合は、ここにsystemエントリが表示される場合があります。 nvm use systemを使用して、システムにインストールされているバージョンのノードをアクティブ化できます。

さらに、この出力には、Node のさまざまな長期サポート(LTS)リリースのエイリアスが一覧表示されます。

Output
. . . lts/* -> lts/fermium (-> 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.11 (-> N/A) lts/fermium -> v14.19.1 (-> N/A) lts/gallium -> v16.14.2 (-> N/A)

これらのエイリアスに基づいてリリースをインストールすることもできます。 たとえば、最新の長期サポートバージョンgalliumをインストールするには、次のコマンドを実行します。

  1. nvm install lts/gallium
Output
Downloading and installing node v16.14.2... ... Now using node v16.14.2 (npm v8.5.0)

次のように入力すると、インストールが成功したことを確認できます。

  1. node -v
Output
v16.14.2

特定のノードバージョンをデフォルトとして使用する場合は、選択したバージョンで次のように入力します。

  1. nvm alias default 14.10.0

このバージョンは、Nodeで新しいセッションを開始すると自動的に選択されます。 次のようなエイリアスで参照することもできます。

  1. nvm use default
Output
Now using node v14.10.0 (npm v6.14.8)

Node.jsの各バージョンは、独自のパッケージを追跡し、これらを管理するためにnpmを使用できます。

Node.jsを削除する

ターゲットとするバージョンに応じて、aptまたはnvmを使用してNode.jsをアンインストールできます。 DebianリポジトリまたはPPAからインストールされたバージョンを削除するには、システムレベルでaptユーティリティを使用する必要があります。

これらのバージョンのいずれかを削除するには、次のように入力します。

  1. sudo apt remove nodejs

このコマンドは、パッケージと構成ファイルを削除します。

nvmを使用して有効にしたNode.jsのバージョンをアンインストールするには、最初に、削除するバージョンが現在アクティブなバージョンであるかどうかを確認します。

  1. nvm current
Output
v16.14.2

対象のバージョンが現在アクティブなバージョンではなくである場合は、削除するバージョンで次のコマンドを実行できます。

  1. nvm uninstall node_version_to_remove

このコマンドは、選択したバージョンのNode.jsをアンインストールします。

を削除するバージョンがで現在アクティブなバージョンである場合は、最初にnvmを非アクティブ化して、変更を有効にする必要があります。

  1. nvm deactivate

これで、現在のバージョンのNode.jsでnvm uninstallコマンドを使用して、現在のバージョンをアンインストールできます。

  1. nvm uninstall current_node_version

これにより、再インストールに使用できるキャッシュされたファイルを除いて、Node.jsのターゲットバージョンに関連付けられているすべてのファイルが削除されます。

結論

Debian10サーバーでNode.jsを起動して実行する方法はたくさんあります。 あなたの状況は、上記の方法のどれがあなたのニーズに最適であるかを決定します。 Debianリポジトリでパッケージ化されたバージョンを使用することは実験のオプションですが、PPAからインストールし、NodeSourcePPAまたはnvmを操作すると、さらに柔軟性が高まります。

Node.jsを使用したプログラミングの詳細については、チュートリアルシリーズNode.jsでのコーディング方法を参照してください。