序章

Node.jsは、サーバー側プログラミング用のJavascriptプラットフォームです。 これにより、ユーザーはバックエンド機能を必要とするネットワークアプリケーションを簡単に作成できます。 クライアント言語とサーバー言語の両方としてJavascriptを使用することにより、開発を迅速かつ一貫性のあるものにすることができます。

このガイドでは、CentOS7サーバーにNode.jsをインストールして開始するためのいくつかの異なる方法を紹介します。 ほとんどのユーザーは、EPELのインストール手順またはNVMのインストール手順を使用することをお勧めします。

ソースからノードをインストールする

Node.jsを取得する1つの方法は、ソースコードを取得して自分でコンパイルすることです。

そのためには、プロジェクトのWebサイトからソースコードを入手する必要があります。 ダウンロードページで、[ソースコード]リンクを右クリックし、[リンクアドレスのコピー]またはブラウザに表示される同様のオプションをクリックします。

サーバーで、wgetを使用し、コピーしたリンクを貼り付けて、アーカイブファイルをダウンロードします。

wget http://nodejs.org/dist/v0.10.30/node-v0.10.30.tar.gz

アーカイブを抽出し、次のように入力して新しいディレクトリに移動します。

tar xzvf node-v* && cd node-v*

コードをコンパイルするためにCentOSリポジトリからダウンロードする必要のあるパッケージがいくつかあります。 yumを使用して、これらを今すぐ入手してください。

sudo yum install gcc gcc-c++

これで、ソフトウェアを構成およびコンパイルできます。

./configure
make

コンパイルにはかなり時間がかかります。 終了したら、次のように入力してソフトウェアをシステムにインストールできます。

sudo make install

インストールが成功したことを確認するには、Nodeにバージョン番号を表示するように依頼できます。

node --version
v0.10.30

バージョン番号が表示されている場合は、インストールが正常に完了しています。

ノードサイトからパッケージをインストールする

サーバーにNode.jsをインストールするための別のオプションは、Node.jsWebサイトからビルド済みのパッケージを取得してインストールすることです。

Linuxバイナリパッケージはここにあります。 CentOS 7は64ビットアーキテクチャでのみ提供されるため、「64ビット」というラベルの付いた「Linuxバイナリ(.tar.gz)」の下のリンクを右クリックします。 「リンクアドレスのコピー」またはブラウザが提供する同様のオプションを選択します。

サーバーで、ホームディレクトリに移動し、wgetユーティリティを使用してファイルをダウンロードします。 コピーしたURLをコマンドの引数として貼り付けます。

cd ~
wget http://nodejs.org/dist/v0.10.30/node-v0.10.30-linux-x64.tar.gz

:URLのバージョン番号は、上記のものとは異なる可能性があります。 このガイドで提供されている特定のURLではなく、Node.jsサイトからコピーしたアドレスを使用してください。

次に、tarコマンドを使用して、バイナリパッケージをシステムのローカルパッケージ階層に抽出します。 アーカイブはバージョン管理されたディレクトリ内にパッケージ化されており、--strip-components 1オプションを渡すことで削除できます。 -Cコマンドを使用して、コマンドのターゲットディレクトリを指定します。

sudo tar --strip-components 1 -xzvf node-v* -C /usr/local

これにより、システムの/usr/localブランチ内のすべてのコンポーネントがインストールされます。

Nodeにバージョン番号を尋ねることで、インストールが成功したことを確認できます。

node --version
v0.10.30

インストールが成功し、CentOS7サーバーでNode.jsの使用を開始できるようになりました。

EPELリポジトリからノードをインストールします

別のインストール方法では、CentOSおよび関連するディストリビューションで使用可能な EPEL (Enterprise Linux用の追加パッケージ)リポジトリを使用します。

EPELリポジトリにアクセスするには、インストールのリポジトリリストを変更する必要があります。 幸い、現在のリポジトリで利用可能なepel-releaseというパッケージをインストールすることで、このリポジトリへのアクセスを再構成できます。

sudo yum install epel-release

EPELリポジトリにアクセスできるようになったので、通常のyumコマンドを使用してNode.jsをインストールできます。

sudo yum install nodejs

繰り返しになりますが、Nodeにバージョン番号を返すように依頼することで、インストールが成功したことを確認できます。

node --version
v0.10.30

多くの人は、ノードパッケージを管理するためにnpmにもアクセスしたいと思うでしょう。 次のように入力して、EPELからこれを取得することもできます。

sudo yum install npm

NodeVersionManagerを使用してノードをインストールする

特に柔軟なNode.jsをインストールする別の方法は、ノードバージョンマネージャーであるNVMを使用することです。 このソフトウェアを使用すると、Node.jsのさまざまな独立したバージョンとそれに関連するNodeパッケージを同時にインストールして維持できます。

CentOS 7マシンにNVMをインストールするには、プロジェクトのGitHubページにアクセスしてください。 メインページに表示されるREADMEファイルからcurlまたはwgetコマンドをコピーします。 これにより、インストールスクリプトの最新バージョンが表示されます。

コマンドをbashにパイプする前に、スクリプトを監査して、同意できないことを実行していないことを確認することをお勧めします。 これを行うには、curlコマンドの最後にある| bashセグメントを削除します。

curl https://raw.githubusercontent.com/creationix/nvm/v0.13.1/install.sh

見て、それが行っている変更に満足していることを確認してください。 満足したら、最後に| bashを付けてコマンドをやり直してください。 使用するURLは、最新バージョンのNVMによって異なりますが、現時点では、次のように入力することでスクリプトをダウンロードして実行できます。

curl https://raw.githubusercontent.com/creationix/nvm/v0.13.1/install.sh | bash

これにより、nvmスクリプトがユーザーアカウントにインストールされます。 これを使用するには、最初に.bash_profileを調達する必要があります。

source ~/.bash_profile

これで、NVMが認識しているノードのバージョンを確認できます。

nvm list-remote
. . .
v0.10.29
v0.10.30
 v0.11.0
 v0.11.1
 v0.11.2
 v0.11.3
 v0.11.4
 v0.11.5
 v0.11.6
 v0.11.7
 v0.11.8
 v0.11.9
v0.11.10
v0.11.11
v0.11.12
v0.11.13

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

nvm install v0.10.30

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

nvm list
->  v0.10.30
      system

次のように入力して、それらを切り替えることができます。

nvm use v0.10.30
Now using node v0.10.30

このバージョンをデフォルトとして設定するには、次のように入力します。

nvm alias default v0.10.30
default -> v0.10.30

次のように入力することで、他のセクションと同じ手法を使用してインストールが成功したことを確認できます。

node --version
v0.10.30

バージョン番号の出力から、ノードが期待どおりにマシンにインストールされていることがわかります。

結論

ご覧のとおり、CentOS7サーバーでNode.jsを起動して実行するにはさまざまな方法があります。 インストール方法の1つで問題が発生する場合は、他のオプションの1つを試してください。