Vagrant ボックス (ubuntu-precise12042-x64-vbox43) で node.js と grunt を実行する

Vagrant ボックス (ubuntu-precise12042-x64-vbox43) で node.js と grunt を実行する

Vagrantボックスでnode.js、Grunt、NPMを実行する方法がわかりません。ubuntu-precise12042-x64-vbox43を使用しており、puppetでプロビジョニングしています。puppetを使い始めたばかりなので、https://puphpet.com よりマニフェストを生成する。vagrant upボックスが適切にプロビジョニングされ、問題なく起動したら、Googleで調べてhttps://stackoverflow.com/questions/19000534/install-node-js-on-ubuntu-12-04-lts-using-puppet。 を実行しvagrant SSH、その後 を実行しましたが、puppet module install willdurand/nodejs問題なく実行されました。問題は、次に何をすればよいかわからないことです。 「in」 の状態で NPM および Node コマンドを実行できると思っていましたvagrant SSH。何が間違っているのでしょうか。 実行すると、次のようにNPM表示されます。

the program 'npm' is currently not installed. You can install it by typing: sudo apt-get install npm

他のコマンドを実行する必要がありますか?

答え1

Puppet モジュールをインストールするだけではプログラムはインストールされません。Puppet に、Puppet 内で Node.js を処理する方法を指示するだけです。Puppet マニフェストに宣言を追加して、vagrant provision再度実行する必要があります。

例:

class { 'nodejs':
  version => 'stable',
}

package { 'express':
  provider => npm
}

答え2

Vagrantfileプロビジョニング ファイルを定義します。

config.vm.provision "shell", path: "scripts/provision.sh"

次に、必要なパッケージ (例)を使用package.jsonして を作成します。npmgrunt

{
  "name": "vagrant",
  "devDependencies": {
    "grunt": "~0.4.5",
    "grunt-cli": "^0.1.13",
    "grunt-exec": "^0.4.6",
    "shelljs": "^0.5.3"
  }
}

次に、依存パッケージをprovision.shインストールします。npm

apt-get install
npm install
grunt --version

VM プロビジョニング ( vagrant up) 中にそれが機能するかどうかを確認します。

または、他の回答で説明されているように、Puppet マニフェストを使用します。

関連情報