CentOS7サーバーにNode.jsをインストールする方法
序章
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つを試してください。