GitとNode.jsをLinuxにインストールする手順

“Git”はソースコードを管理するシステムです。GitHubなどWebサービスとして提供しているサイトもあります。”Node.js”はサーバー上でJavaScriptを動かすためのシステムです。GitとNode.jsはWeb開発でよく使われるシステムで、Node.jsで動作するアプリがGitHubで数多く公開されています。

この前CentOS7の開発環境を移行する機会があったので、GitとNode.jsのインストール方法について改めてまとめてみました。

Gitをインストールする

GitHubで公開されているソースコードを扱うために、自分の環境にGitをインストールします。

CentOS7の場合、標準リポジトリだとバージョン1のgitをインストールしてしまうため、バージョン2のgitをインストールする場合には以下の操作でインストールします。

# yum -y install https://repo.ius.io/ius-release-el7.rpm
# yum -y install git222 yum-utils
# yum-config-manager --disable ius
# git --version
git version 2.22.3

rpmとして”https://centos7.iuscommunity.org/ius-release.rpm”を紹介しているネット記事がありましたがうまくつながらず、代わりに”https://repo.ius.io/ius-release-el7.rpm”を使用しています。

この場合、パッケージ名も”git2u”ではなく”git222″に変わっています。

No package git2u available.

補足

Amazon Linux2の場合は、標準リポジトリからv2.23がインストールできます。

# sudo yum -y install git;
# git --version
git version 2.23.3

Node.jsをインストールする

Node.jsには様々なインストール方法があります。ここでは”nvm”というNode.jsのバージョン管理ができる仕組みを使いたいと思います。

nvmをインストールする

まずは先ほどインストールしたGitを使って、nvmをホームディレクトリにインストールします。

# git clone git://github.com/creationix/nvm.git ~/.nvm
# source ~/.nvm/nvm.sh

もしGitのクローンを実行した際に、

fatal: Unable to look up github.com (port 9418) (Name or service not known)

のエラーがでた場合には、httpsで実行してみてください。

# git clone https://github.com/creationix/nvm.git ~/.nvm

常にhttpsを使う場合は、gitの設定を以下のように変更します。

# git config --global url."https://".insteadOf git://

Node.jsのインストール

nvmを使うとNode.jsの様々なバージョンをインストールすることができます。インストール可能なNode.jsのバージョンを表示するには以下のコマンドを叩きます。

# nvm ls-remote
v12.18.3 (Latest LTS: Erbium)

“LTS”の記載があるバージョンは、動作が安定しており長期サポートが保証されているバージョンになります。ここでは安定版のv12.18.3のnode.jsをインストールします。

# nvm install 12.18.3
# node -v
v12.18.3

これでNode.jsが使えるようになりました。

nvmをログイン時に自動実行する

実はこのままLinuxログアウトしてしまうとnvmも停止してしまいます。面倒なのでログイン時にnvmを自動で実行するように設定しましょう。

/etc/profile.d/にシェルスクリプトを置いておくとログイン時にスクリプトが実行されるので、以下のようなスクリプトを作成します。

# vim /etc/profile.d/launch-nvm.sh

source ~/.nvm/nvm.sh

Node.jsのバージョンを切り替える

nvmでは複数のnode.jsのバージョンをインストールすることができます。使用するバージョンを切り替えるには”nvm use”コマンドを実行します。

nvm use 14.9.0

Related Posts