メインコンテンツまでスキップ
Version: 7.x

インストール

スタンドアロンスクリプトを使用する

Node.js がインストールされていない場合でも、次のスクリプトを使用して pnpm をインストールできます。

Windows の場合

PowerShell を使用:

iwr https://get.pnpm.io/install.ps1 -useb | iex

POSIX システムの場合

curl -fsSL https://get.pnpm.io/install.sh | sh -

curlがインストールされていない場合は、wgetを使用します。

wget -qO- https://get.pnpm.io/install.sh | sh -

Alpine Linux の場合

# bash
wget -qO- https://get.pnpm.io/install.sh | ENV="$HOME/.bashrc" SHELL="$(which bash)" bash -
# sh
wget -qO- https://get.pnpm.io/install.sh | ENV="$HOME/.shrc" SHELL="$(which sh)" sh -
# dash
wget -qO- https://get.pnpm.io/install.sh | ENV="$HOME/.dashrc" SHELL="$(which dash)" dash -

前提条件

スタンドアロン スクリプトを使用して pnpm をインストールしない場合は、システムに Node.js (少なくとも v14) をインストールする必要があります。

特定のバージョンのインストール

インストール スクリプトを実行する前に、オプションで環境変数 PNPM_VERSION を設定して、pnpm の特定のバージョンをインストールできます。

curl -fsSL https://get.pnpm.io/install.sh | env PNPM_VERSION=<version> sh -
ヒント

pnpm env コマンドを使用して Node.js をインストールできるようになります。

Corepack を使用する

Node.jsではv16.13以降、パッケージマネージャーを管理するために Corepackの提供を始めました。 これは実験的な機能であるため、次のコマンドを実行して有効にする必要があります。

corepack enable

Homebrew を使用して Node.js をインストールした場合は、Corepack を個別にインストールする必要があります。

brew install corepack

これにより、システムにpnpmが自動的にインストールされます。 ただし、pnpmの最新バージョンではない可能性が高いです。 アップグレードするには、 最新のpnpmのバージョン を確認し、次のコマンドを実行します。

corepack prepare pnpm@<version> --activate

Node.js v16.17 以降では、latestタグを指定することで、最新バージョンの pnpm をインストールできます。

corepack prepare pnpm@latest --activate

npm を使用する

npm install -g pnpm

Homebrew を使用する

パッケージマネージャーがインストールされている場合は、次のコマンドを使用してpnpmをインストールできます。

brew install pnpm

Scoop を使用する

Scoop がインストールされている場合は、次のコマンドを使用してpnpmをインストールできます。

scoop install nodejs-lts pnpm
ヒント

CI サーバーで pnpm を使用したいですか? こちらをご覧ください: Continuous Integration

互換性

これは、過去の pnpm バージョンとそれぞれの pnpm でサポートされている Node.js バージョンのリストです。

Node.jspnpm 4pnpm 5pnpm 6pnpm 7
Node.js 10✔️✔️
Node.js 12✔️✔️✔️
Node.js 14✔️✔️✔️✔️
Node.js 16?️?️✔️✔️
Node.js 18?️?️✔️✔️

トラブルシューティング

pnpm が壊れていて、再インストールしても修正できない場合は、PATH から手動で削除する必要があるかもしれません。

pnpm installの実行時に次のエラーが発生したとします。

C:\src>pnpm install
internal/modules/cjs/loader.js:883
throw err;
^



Error: Cannot find module 'C:\Users\Bence\AppData\Roaming\npm\pnpm-global\4\node_modules\pnpm\bin\pnpm.js'
←[90m at Function.Module._resolveFilename (internal/modules/cjs/loader.js:880:15)←[39m
←[90m at Function.Module._load (internal/modules/cjs/loader.js:725:27)←[39m
←[90m at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)←[39m
←[90m at internal/main/run_main_module.js:17:47←[39m {
code: ←[32m'MODULE_NOT_FOUND'←[39m,
requireStack: []
}

まず、 which pnpm を実行して、pnpm がどこにあるか探してください。 Windows を使用している場合は、Git Bash を使用して以下のコマンドを実行します。 pnpm コマンドの場所が表示されます。次のように表示されるでしょう。

$ which pnpm
/c/Program Files/nodejs/pnpm

これで、 pnpm の CLI がどこにあるかが分かりました。そのディレクトリを開き、 pnpm 関連ファイル (pnpm.cmdpnpx.cmdpnpm など) を削除します。 完了したら、pnpm を再度インストールしましょう。期待どおりに動作するはずです。

短いエイリアスを使用する

pnpm は入力するのが難しいかもしれないので、代わりにpn のような短いエイリアスを使うことができます。

POSIX システムでの永続的なエイリアスの追加

次のコードを .bashrc, .zshrc, config.fishに追記するだけです。

alias pn=pnpm

Powershell (Windows) に永続的なエイリアスを追加

管理者権限を持つ Powershell ウィンドウで、次のコマンドを実行します。

notepad $profile.AllUsersAllHosts

profile.ps1 ファイルが開きますので、次のように入力します。

set-alias -name pn -value pnpm

ファイルを保存して、ウィンドウを閉じます。 エイリアスを有効にするために、開いている PowerShell ウィンドウを一度全て閉じる必要があるかもしれません。

pnpmをアンインストールする

pnpm CLI と pnpm が書き込んだ全てのファイルを削除する必要がある場合は、 pnpm のアンインストールを参照してください。