5

node.js と npm をソースからビルドせずに (シェル スクリプトを使用して) 無人でインストールする方法はありますか? サーバーの負荷に基づいて自動的にスケーリングする一連のサーバーがありますが、Node.js ソースをダウンロードして make を使用してビルドするには 10 分ほどかかります。

ありがとう!

編集: バイナリをコピーしようとしましたが、バイナリが破損しているというエラーが発生しました。はい、それらはすべて EC2 m1.small インスタンスです。

4

6 に答える 6

4

遅れているかもしれませんが、Windows 用のインストール可能な MSI ファイルがあるので、プラットフォーム (32 ビットまたは 64 ビット) に対応するファイルを次の場所からダウンロードできます。

http://nodejs.org/download/

msiexec /qn フラグを使用してサイレント インストールを開始するには、次の投稿を確認してください。

MSIEXEC サイレント モード インストール

node.js msi インストーラーは現在、非常に単純です。追加の手順を実行せずに、PATH にノードと npm をインストールします。

于 2013-01-12T01:21:55.447 に答える
4

EC2 を使用しているため、独自の AMI を作成すると役立つ場合があります。私が見つけた最も便利な方法は次のとおりです。

  1. 大型で強力なマシンをスピンアップ
  2. 最新の安定した Node.js をコンパイルする
  3. NPM をインストールしてから Nave をインストールします
  4. Nave を使用して Node.js の複数のバージョンをインストールします。それぞれに独自の NPM があります。
  5. これを AMI として保存します

私は通常、プロジェクトに応じて 3 ~ 5 の異なるバージョンをインストールし[1]、それぞれに個別のモジュールがあります。Nave は、さまざまな Node バージョンとそのモジュールをサンドボックス化します。

その後、好きなように設定したら、このマスター コピーから簡単にサーバーを追加できます[2]。必要に応じて、すべてのNode.js バージョンを技術的にコンパイルすることもできますが、これは必要ではありません。

[1] たとえば、現在、Braintree モジュールには Node.js@0.4.7 が必要ですが、メイン コードベースは Node.js@0.4.1 にあります。
[2] アーキテクチャに一貫性を保つ限り、これをすべて m1.xlarge でコンパイルすると、m1.small ではイメージを使用できません。xl は 64 ビットで、small は 32 ビットだからです。

于 2011-07-18T21:55:17.277 に答える
2

スクリプトが次のようなものであると仮定します。

git clone https://github.com/joyent/node.git
cd node
./configure
make

ここからの結果を新しいインスタンスごとに使用するだけでなく、次のことを続けることはできますか?

sudo make install
curl http://npmjs.org/install.sh | sudo sh
于 2011-06-18T17:58:26.790 に答える
1

Ubuntuを使用している場合はdebパッケージもあります(他のDebianまたはUbuntuベースのディストリビューションでも機能する可能性があります)。

http://blog.jetienne.com/2010/08/nodejs-deb-package-on-ubuntu-repository.html

sudo add-apt-repository ppa:jerome-etienne/neoip && 
     sudo apt-get update && 
     sudo apt-get install nodejs

..

$ node -v
v0.2.6

npmの場合:

curl http://npmjs.org/install.sh | sudo sh
于 2011-07-25T04:07:47.190 に答える
1

サーバーはすべて同じプラットフォーム/カーネルであり、redhat/centos 環境から言えば、1 つのサーバーでビルドしてバイナリを RPM にパッケージ化しないのはなぜですか? その後、他のサーバー間でそれを使用できます。Debian 環境にいる場合、deb パッケージについても同じであると想定しています。

于 2011-06-18T17:57:00.893 に答える
0

RPM など、OS ディストリビューションに適したパッケージ システムを構築し、それをサーバーと共有するという James C の提案に賛成します。

于 2012-10-08T19:04:06.510 に答える