Node.js 18をUbuntu 22.04にインストールする方法
問題概要
Ubuntu 22.04にNode.js バージョン18をインストールしようとする場合、以下のコマンドを実行しても古いバージョン(v12.22.9など)がインストールされる問題が発生します。
curl -sL https://deb.nodesource.com/setup_18.x -o nodesource_setup.sh
sudo bash nodesource_setup.sh
sudo apt install nodejs
この問題の主な原因は:
- システムに既存のNode.jsバージョンが存在する
- Nodesourceリポジトリが正しく構成されていない
- 依存関係の競合
特にReactアプリ開発などではNode.js 14以上が必要なため、この問題の解決が重要です。
推奨解決策(Nodesourceリポジトリ利用)
注意
公式Nodesourceリポジトリを使用する方法はシステム全体にインストールされます。複数のNode.jsバージョンを管理したい場合は「nvmを使う方法」を参照してください。
手順1:依存パッケージのインストール
sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg
手順2:GPGキーのインポート
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
手順3:リポジトリの追加
# Node.js 18をインストールする場合
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_18.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list
手順4:Node.jsのインストール
sudo apt-get update
sudo apt-get install nodejs -y
手順5:インストール確認
node --version
# v18.x.x が表示されれば成功
nvmによるインストール(複数バージョン管理向け)
メリット
- ユーザーごとに異なるバージョンを簡単に切り替え可能
- sudo権限が不要
- 複数のプロジェクトで異なるバージョンが必要な場合に最適
手順1:nvmのインストール
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
インストール後、新しいターミナルを開くか次のコマンドを実行:
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
手順2:Node.js 18のインストールと使用
# 利用可能なバージョン確認
nvm list-remote
# バージョン18をインストール
nvm install 18
# インストール済みバージョン確認
nvm list
# バージョン18を使用
nvm use 18
# デフォルトバージョン設定(任意)
nvm alias default 18
トラブルシューティング
古いバージョンが残る場合の解決法
重要
既存のNode.jsがあると競合が発生する場合があります。次の手順で完全削除してください。
# 既存Node.jsの削除
sudo apt purge nodejs -y
sudo apt autoremove -y
# キャッシュ削除
sudo rm -rf /etc/apt/sources.list.d/nodesource.list
sudo rm -rf /etc/apt/keyrings/nodesource.gpg
# リポジトリ情報更新
sudo apt update
# その後、前述のインストール手順を再実行
依存関係エラーが発生する場合
# 依存関係の修復
sudo apt --fix-broken install
# ビルドツールの追加インストール
sudo apt install build-essential -y
アンインストール方法
Nodesource経由でインストールした場合
sudo apt purge nodejs -y
sudo rm -rf /etc/apt/sources.list.d/nodesource.list
sudo rm -rf /etc/apt/keyrings/nodesource.gpg
sudo apt autoremove -y
nvm経由でインストールした場合
nvm uninstall 18 # 特定バージョンの削除
nvm deactivate # nvmの無効化
ベストプラクティスの推奨
開発環境ではnvmを優先
プロジェクトごとのバージョン管理が容易になり、権限エラーを回避できます本番環境では公式リポジトリを利用
システム全体の安定性を確保できますインストール後の確認
必ずnode --version
とnpm --version
でバージョン確認を実行してください長期サポート(LTS)版の選択
プロダクション環境では偶数のLTS版(例:v18.x)を使用することをお勧めします