OS Xにbrew、node.js、io.js、nvm、npmをインストールするための推奨される方法は何ですか?


175

なるべく自作を使うようにしています。OS Xに以下をインストールするための推奨される方法は何ですか?

うまくいけば、以下の開発をサポートします:


9
あなたが自作を使用するように頼んだが、それが注意されるべきです。NVMをインストールするには、自作を使用することから、推奨されませんgithub.com/creationix/nvm自作のインストールがサポートされていません」。あなたは自作-インストールNVMに問題がある場合は、それをアンインストール醸造、および問題を提出する前に、それは、以下の手順を使用してインストールしてください」
エリック

回答:


267
  1. homebrewインストールの使用nvm

    brew update
    brew install nvm
    source $(brew --prefix nvm)/nvm.sh

    最後のコマンドを.profile.bashrcまたは.zshrcファイルに追加して、端末が起動するたびに再度実行しないようにします。たとえば、.profile実行に追加するには、次のようにします。

    echo "source $(brew --prefix nvm)/nvm.sh" >> ~/.profile

    nvm使用したインストールに問題があるbrew場合は、手動でインストールできます(ここを参照)

  2. 使用してnvmインストールしますnodeiojs(あなたが望む任意のバージョンをインストールすることができます):

    nvm install 0.10
    # or
    nvm install iojs-1.2.0
  3. npmnode(またはiojs)で出荷されるため、インストールnode(またはiojs)後に利用可能になります。最新バージョンにアップグレードすることをお勧めします。

    $ npm install -g npm@latest

    UPD以前のバージョンはでしたnpm update -g npm。正しい方法を指摘してくれた@Metallicaに感謝します(以下のコメントをご覧ください)。

  4. npmインストールの使用ionic

    npm install -g ionic
  5. についてngCordovanpmまたはを使用してインストールできますbower。どのバリアントがより適しているかわかりません。クライアント側で使用するパッケージマネージャーによって異なります。そのため、両方について説明します。

    1. 使用npm:プロジェクトフォルダに移動してng-cordova、そこにインストールします。

      npm install --save ng-cordova
    2. 使用bower:bowerのインストール:

       npm install -g bower

      次に、プロジェクトフォルダーに移動してインストールngCordovaします。

       bower install --save ngCordova

PS

  1. 一部のコマンドにはスーパーユーザー権限が必要な場合があります
  2. 短いバリアントnpm install some_moduleISnpm i some_module

10
npm自体を更新する場合は、npm updateコマンドを使用しないください。アップストリームが推奨するnpmの更新方法は次のとおりですnpm install -g npm@latest(からbrew info node、およびここ
Javad Sadeqzadeh

10
現在のbrew nvmインストールから:「アップストリームからHomebrewによるnvmの明示的な管理を要求されていることに注意してください...」->したがって、おそらく正しい答えは、nvm / node.js / ioにbrewを使用しないことです。 .js。
s.Daniel 2015年

7
「nvmはnpm構成の「プレフィックス」オプションと互換性がありません」というエラーメッセージを受け取りました。このサイト(github.com/creationix/nvm/issues/855#issue-109279804)によると、NVMはHomebrewと互換性がありません。CURLコマンドを使用して「アンインストールされたnvmを作成」し、nvmをインストールしたところ、エラーメッセージが表示されなくなりました。
YeeHaw1234 2015

4
しばらくbrewを介してnvmを使用しましたが、「上流...明示的...サポートされていません」というメッセージも表示されました。NVMのドキュメントには、「Homebrewのインストールはサポートされていません。homebrewでインストールされたnvmに問題がある場合は、brewをアンインストールし、以下の手順に従ってインストールしてから、問題を報告してください。」と明記されています。したがって、これはおそらくもう受け入れられた答えではないはずです。私はうまくいくnを使い始めました。
whatsthatitspat

3
現在のNVMバージョン(v0.33.2)は自作のインストールをサポートしていません:github.com/creationix/nvm/tree/v0.33.2#installation
Andrea Carraro

45

2019アップデート:Homebrewではなく、NVMを使用してノードをインストールします

ほとんどの回答で、nvmをインストールするための推奨される方法はHomebrewを使用することです

やめてください

で、Githubのページ NVMのためには、明確に呼び出されます。

自作インストールはサポートされていません。homebrewでインストールされたnvmに問題がある場合は、brewをアンインストールし、問題を報告する前に、以下の手順に従ってインストールしてください。

代わりに次の方法を使用してください

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash

スクリプトはnvmリポジトリを〜/ .nvmに複製し、ソース行をプロファイルに追加します(〜/ .bash_profile、〜/ .zshrc、〜/ .profile、または〜/ .bashrc)。

そして、nvmを使用してノードをインストールします。たとえば、最新のLTSバージョンをインストールするには、次のようにします。

nvm install v8.11.1

清潔で手間のかからない。これはデフォルトのノードバージョンとしてもマークされるので、すべての設定が必要です


2
nvm install --lts最新のLTSを入手することもできます
skube

1
これを取り上げてくれてありがとう、私はnvmとhomebrewで恐ろしいウサギの穴を下って行ったところ、すぐに現れた...
cssidy

いい答えだ!(ノードのインストールが地雷原可能)読んだ多くの後、私はちょうどモハーベ10.14.4上のノードをインストールするには、アンインストールしたノード、一掃家や使用済みのNVMを醸造:stackoverflow.com/q/55735701/123033
デイブEveritt

13

n(ノードバージョン管理)を使用しています

2つの方法でインストールできます

brew install n

または

npm install -g n

異なるバージョンのノードとioを切り替えることができます。以下は、paramsなしでnを呼び出したときの現在の環境の例です。

$ n

  io/3.3.1
  node/0.12.7
  node/4.0.0
  node/5.0.0
ο node/5.10.1 

2
あなたがそれを必要とする場合は、無痛と葉便利なアンインストールユーティリティであるインストールする第三の方法を追加することができます- github.com/mklement0/n-install この方法は、n個のドキュメントで提案されてgithub.com/tj/n
whatsthatitspat

1
また、異なるプロジェクトに対して異なるノードバージョンを同時に実行する予定の場合(2つの異なるターミナルウィンドウなど)、nvmは各セッションでノードへのパスのみを切り替えるため、より良い選択であることにも言及する必要があります。
Nilloc 16

10

私はこれにとても遅れていますが、他の答えは好きではありませんでした

Homebrewのインストール

BREW用の実行

"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

ノードとnpmのインストール

nodenpmのインストールには使用しないでください。brew

私は(alexpods答えのように、これであなたはノードをインストールするために自作を使用する必要があることが示唆されたいくつかの場所を見てきたチームのツリーハウスのポストをブログ)が、この方法でインストールし、あなたがなどの問題に遭遇する傾向だnpmbrew両方あるパッケージマネージャ、あなたがすべき持っているパッケージマネージャは、別の管理パッケージマネージャを、このリードは、このバグの公式のように、問題にNPMの問題の削除を拒否:は/ usr / local /ビン/ NPMエラーまたはこのOSX上でできるわけではありませんアンインストールNPMモジュール

トピックについて詳しくは、DanHerbertの投稿 Fixing npm On Mac OS X for Homebrew Usersを参照してください。

また、npmのHomebrewインストールを使用すると、グローバルパッケージをインストールするときにsudoを使用する必要があります。Homebrewの背後にある中心的なアイデアの1つは、アプリにルートアクセスを付与せずにインストールできるということなので、これは悪いアイデアです。

その他すべて

npmを使用します。ただし、実際には各モジュールのインストール手順に従って、そこにあるWebサイトの指示に従ってください。他の誰よりも、問題やバグに気づいているからです。


ダウンロードからインストールすることをお勧めしますか?
Shawn Mclean

6

以前にbrewを使用してノードをインストールしたことがある場合は、ノードを「正しい方法」でインストールする前にクリーンアップする必要がある追加のファイルがたくさんあります。さらに、スムーズに動作させるために、起動スクリプトにいくつかの設定を追加する必要がありました。

これを簡単にするためのスクリプトを書きました。

# filename:  install-nvm-npm-node
# author:    Lex Sheehan
# purpose:   To cleanly install NVM, NODE and NPM
# dependencies:  brew

NOW=$(date +%x\ %H:%M:%S)
CR=$'\n'
REV=$(tput rev)
OFF=$(tput sgr0)
BACKUP_DIR=$HOME/backups/nvm-npm-bower-caches/$NOW
MY_NAME=$(basename $0)
NODE_VER_TO_INSTALL=$1
if [ "$NODE_VER_TO_INSTALL" == "" ]; then
    NODE_VER_TO_INSTALL=v0.12.2
fi
if [ "`echo "$NODE_VER_TO_INSTALL" | cut -c1-1`" != "v" ]; then
    echo """$CR""Usage:   $ $MY_NAME <NODE_VERSION_TO_INSALL>"
    echo "Example: $ $MY_NAME v0.12.1"
    echo "Example: $ $MY_NAME $CR"
    exit 1
fi
echo """$CR""First, run:  $ brew update"
echo "Likely, you'll need to do what it suggests."
echo "Likely, you'll need to run: $ brew update$CR"
echo "To install latest node version, run the following command to get the latest version:  $ nvm ls-remote"
echo "... and pass the version number you want as the only param to $MY_NAME. $CR"
echo "Are you ready to install the latest version of nvm and npm and node version $NODE_VER_TO_INSTALL ?$CR"
echo "Press CTL+C to exit --or-- Enter to continue..."
read x

echo """$REV""Uninstalling nvm...$CR$OFF"
# Making backups, but in all likelyhood you'll just reinstall them (and won't need these backups)
if [ ! -d "$BACKUP_DIR" ]; then 
    echo "Creating directory to store $HOME/.nvm .npm and .bower cache backups: $BACKUP_DIR"
    mkdir -p $BACKUP_DIR
fi 
set -x
mv $HOME/.nvm   $BACKUP_DIR  2>/dev/null
mv $HOME/.npm   $BACKUP_DIR  2>/dev/null
mv $HOME/.bower $BACKUP_DIR  2>/dev/null
{ set +x; } &>/dev/null

echo "$REV""$CR""Uninstalling node...$CR$OFF"
echo "Enter your password to remove user some node-related /usr/local directories"
set -x
sudo rm -rf /usr/local/lib/node_modules
rm -rf /usr/local/lib/node
rm -rf /usr/local/include/node
rm -rf /usr/local/include/node_modules
rm /usr/local/bin/npm
rm /usr/local/lib/dtrace/node.d
rm -rf $HOME/.node
rm -rf $HOME/.node-gyp
rm /opt/local/bin/node
rm /opt/local/include/node
rm -rf /opt/local/lib/node_modules
rm -rf /usr/local/Cellar/nvm
brew uninstall node 2>/dev/null
{ set +x; } &>/dev/null

echo "$REV""$CR""Installing nvm...$CR$OFF"

echo "++brew install nvm"
brew install nvm 
echo '$(brew --prefix nvm)/nvm.sh'
source $(brew --prefix nvm)/nvm.sh

echo "$REV""$CR""Insert the following line in your startup script (ex: $HOME/.bashrc):$CR$OFF"
echo "export NVM_DIR=\"\$(brew --prefix nvm)\"; [ -s \"\$NVM_DIR/nvm.sh\" ] && . \"\$NVM_DIR/nvm.sh\"$CR"
NVM_DIR="$(brew --prefix nvm)"

echo """$CR""Using nvm install node...$CR"
echo "++ nvm install $NODE_VER_TO_INSTALL"
nvm install $NODE_VER_TO_INSTALL
NODE_BINARY_PATH="`find /usr/local/Cellar/nvm -name node -type d|head -n 1`/$NODE_VER_TO_INSTALL/bin"
echo "$REV""$CR""Insert the following line in your startup script (ex: $HOME/.bashrc) and then restart your shell:$CR$OFF"
echo "export PATH=\$PATH:$NODE_BINARY_PATH:$HOME/.node/bin"

echo """$CR""Upgrading npm...$CR"
echo '++ install -g npm@latest'
npm install -g npm@latest
{ set +x; } &>/dev/null
echo "$REV""$CR""Insert following line in your $HOME/.npmrc file:$OFF"
echo """$CR""prefix=$HOME/.node$CR"
echo "Now, all is likley well if you can run the following without errors:  npm install -g grunt-cli$CR"
echo "Other recommended global installs: bower, gulp, yo, node-inspector$CR"

これが「正しい方法」である理由を詳しく説明する短い記事をここに書きました。

iojsをインストールする必要がある場合は、次のようにnvmを使用してインストールします。

nvm install iojs-v1.7.1

brewをインストールするには、そのホームページをご覧ください

残りについてはalexpodsの回答を参照してください。


5
これらすべてのパッケージマネージャーとバージョンマネージャーが、techstack xyzを機能させるために、カスタムで記述されたスクリプト、ハック、および回避策を実際に削除するのに本当に役立つことを確認して素晴らしい。驚くばかり。
Michael Trouw、2015年

私はnpmで始めて、両方を壊したにもかかわらず私のために働いた
クリスFキャロル

5

グローバルパッケージをインストールするときにスーパーユーザー権限を提供する必要がないため、node.jsをnvmでインストールする必要があります(「sudo」を前に付けずに単に「npm install -g packagename」を実行できます)。

しかし、Brewは他のことについては素晴らしいです。Bowerで何かをインストールするオプションがあるときはいつでも、私はBowerに偏っている傾向があります。


nvmを使用してノードをインストールすることが、今では私の推奨するアプローチです。私のマシンに複数のバージョンのノードを置くことができるという明白な理由のために、またsudoでnpmを実行する必要はありません。インストール方法を説明するブログ投稿garywoodfine.com/install-nodejs-nvm-osxを書いた
Gary Woodfine 2016年

4

私はNOAに同意する-あなたが複数のバージョンを持っている必要がある場合はnodeio.jsその後、醸造適切な解決策ではありません。

io.jsnvmでベータテストのサポートを支援できます:https : //github.com/creationix/nvm/pull/616

必要なだけでio.jsバージョンを切り替えない場合はio.jshttps://iojs.org/dist/v1.0.2/iojs-v1.0.2-darwin-x64.tar.gzからのバイナリディストリビューションをインストールできます。これにはnpmnvmバージョンを切り替えない場合は必要ありません。

npmインストール後に更新することを忘れないでください:sudo npm install -g npm@latest


3

これが私がすることです:

curl https://raw.githubusercontent.com/creationix/nvm/v0.20.0/install.sh | bash
cd / && . ~/.nvm/nvm.sh && nvm install 0.10.35
. ~/.nvm/nvm.sh && nvm alias default 0.10.35

これには自作はありません。

nvmまもなくio.jsをサポートしますが、投稿時はサポートしません:https : //github.com/creationix/nvm/issues/590

次に、プロジェクトごとに、package.jsonおよびを使用して、その他すべてをインストールしますnpm install


0

zshとHomebrewでインストールする場合:

brew install nvm

次に、以下を〜/ .zshrcまたは目的のシェル構成ファイルに追加します。

export NVM_DIR="$HOME/.nvm"
. "/usr/local/opt/nvm/nvm.sh"

次に、ノードバージョンをインストールして使用します。

nvm install 7.10.1
nvm use 7.10.1
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.