NodeJs to JavaScript uruchamiany na maszynie wirtualnej Chrome. Taki serwer JavaScript mozna postawic samodzielnie lub wykorzystac juz istniejace, np. wsparcie od CloudFoundry.
W tym celu rejestrujemy się i ściagamy obraz Micro CloudFoundry. Opisywałem to już w jednym ze swoich postów, dlatego pominę szczegóły.
Żeby komunikować się z CloudFoundry potrzebujemy narzędzie vmc instalowane jako RubyGem.
1. Instalujemy Ruby pod Windowsem
http://docs.cloudfoundry.com/frameworks/ruby/installing-ruby.html#windows
2. Z Ruby shell updatujemy RubyGem
gem update --system
3. Instalujemy VMC
gem install vmc
4. Rejestrujemy docelowe srodowisko CloudFoundry, w przypadku Micro CloudFroundry np:
vmc target http://api.piczkowski.cloudfoundry.megdzie piczkowski to nazwa mojego konta na CloudFoundry.
5. Logujemy sie do CloudFoundry swoim loginem i haslem podanymi przy konfiguracji obrazu Micro CloudFoundry
vmc login Attempting login to [http://api.piczkowski.cloudfoundry.me] Email: piczmar@wp.pl Password: *********
Aby wyswietlic liste dostepnych polecen:
vmc help
Teraz mozemy stworzyc prosta aplikacje NodeJs i zainstalowac na serwerze:
1. Sprawdzamy wersje zainstalowanego na serwerze NodeJs
vmc runtimes
2. Sciagamy taka sama wersje NodeJs z http://nodejs.org/dist/ gdzie wybieramy odpowiednia wersje i szukamy instalatora pod Windows *.msi
Po instalacji bedziemy mieli w zmiennych srodowiskowych program node.exe oraz npm.exe
node.exe
> process.versions
{ node: '0.6.5',
v8: '3.6.6.11',
ares: '1.7.5-DEV',
uv: '0.6',
openssl: '0.9.8r' }
>
3. Tworzymy folder projektu
mkdir hello-nodejs
cd hello-nodejs
4. Instalujemy modul 'express' przy użyciu Node Package Manager'a
npm install express
5. Tworzymy plik aplikacji app.js
var app = require('express').createServer();
app.get('/', function(req, res) {
res.send('Hello from Cloud Foundry');
});
app.listen(process.env.VCAP_APP_PORT || 3000);
CloudFoundry udostepnia port nasluchujacy pod zmienna srodowiskowa
process.env.VCAP_APP_PORT
6. Tworzymy plik z zaleznosciami package.json
{
"name":"hello-node",
"version":"0.0.1",
"dependencies":{
"express":""
}
}
7. Instalujemy na CloudFoundry
vmc login
vmc push
E:\git\try-it-out\com.tryitout.nodejs\src\main\hello-nodejs>vmc push
Would you like to deploy from the current directory? [Yn]: y
Application Name: hello-nodejs
Detected a Node.js Application, is this correct? [Yn]: Y
Application Deployed URL [hello-nodejs.piczkowski.cloudfoundry.me]:
Memory reservation (128M, 256M, 512M, 1G, 2G) [64M]:
How many instances? [1]:
Create services to bind to 'hello-nodejs'? [yN]: N
Would you like to save this configuration? [yN]: y
Manifest written to manifest.yml.
Creating Application: OK
Uploading Application:
Checking for available resources: OK
Processing resources: OK
Packing application: OK
Uploading (271K): OK
Push Status: OK
Staging Application 'hello-nodejs': OK
Starting Application 'hello-nodejs': OK
8. Dzialajaca aplikacje mozemy teraz obejrzec pod adresem
http://hello-nodejs.piczkowski.cloudfoundry.me
i wynik.. (niezbyt okazały...)
Wiecej tutoriali do sprawdzenia pod linkami:
http://blog.cloudfoundry.com/2012/05/24/cloud-foundry-supports-node-js-modules-with-npm/
http://howtonode.org/hello-node
http://blog.springsource.org/2011/05/03/using-mongodb-redis-node-js-and-spring-mvc-in-a-single-cloud-foundry-application/
http://attilamiklosi.net/blog/tag/nodejs/
http://docs.cloudfoundry.com/services/mongodb/nodejs-mongodb.html
http://docs.cloudfoundry.com/services/rabbitmq/nodejs-rabbitmq.html
http://blog.cloudfoundry.com/2012/05/17/node-activity-streams-app-1/
http://blog.cloudfoundry.com/2012/06/05/node-activity-streams-app-2/
http://coreh.github.com/nide/
Brak komentarzy:
Prześlij komentarz