Jak wiadomo nodejs jest serwerem dla aplikacji napisanych w czystym Javascripcie. Nie będę tutaj wnikał w szczegóły ponieważ te poznać można na stronie wydawcy i w milionie innych miejsc, w tym artykule chcę się skupić na instalacji nodejs oraz uruchomieniu testowej aplikacji. Niby zadanie proste, opisane w wielu miejscach jednak okazuje się, że może nastręczyć wielu problemów początkującym developerom, którzy z nodejs dopiero zaczynają. Skupię się tutaj na instalacji na ubuntu jako, że instalacja na windowsach nie powinna nastręczać problemów zaś instalacja na innych linuksach jest bliźniaczo podobna.

Instalacja

Do sensownej pracy z nodejs będziemy potrzebować dwóch programów, samego nodejs oraz npm, który pełni rolę repozytorium modułów. Zaczynajmy więc, po zalogowaniu się na serwer instalujemy najpierw nodejs:

sudo apt-get update
sudo apt-get install nodejs

a następnie instalujemy npm

sudo apt-get install npm

Jeśli z jakichś przyczyn apt nie potrafi znaleźć pakietów nodejs musimy dodać repozytorium do naszej listy, a zrobimy to komendą

curl -sL https://deb.nodesource.com/setup | sudo bash -

I wtedy dopiero wykonujemy instalację. Ok, zainstalowaliśmy serwer nodejs, teraz możemy sprawdzić czy działa wpisując komendę

node -v

Jeśli pojawi się numer wersji, wszystko jest ok.

Testowa aplikacja

Mamy już serwer teraz czas na napisanie pierwszej, bardzo prostej aplikacji. Najpierw musimy stworzyć środowisko, w którym będziemy pracować. W katalogu domowym (lub w dowolnym innym) stworzymy sobie katalog nodejs.

cd /home
mkdir nodejs
cd nodejs

To będzie nasz poligon doświadczalny. Teraz tworzymy plik, który będzie pełnił rolę serca naszej aplikacji, nazwijmy go app.js

nano app.js

Jeśli nie macie nano lub wolicie plik wgrać przez FTP to be my guests.

Do pliku wklejamy kod:

var sys = require("sys"),
my_http = require("http");
my_http.createServer(function(request,response){
    sys.puts("I got kicked");
    response.writeHeader(200, {"Content-Type": "text/plain"});
    response.write("Hello World");
    response.end();
}).listen(8080);
sys.puts("Server Running on 8080");

Zapisujemy plik. Teraz możemy uruchomić nasz serwer

nodejs app.js

Tada! Serwer działa pod adresem http://waszip:8080, jeśli nie działa może ten port być blokowany przez firewall dlatego dodajemy go sobie jako otwarty w zaporze

sudo ufw allow 8080

Możemy oczywiście zamiast portu 8080 wpisać inny wolny port, np. 81. To w sumie wszystko aby uruchomić działający serwer. Oczywiście ta aplikacja nic nie robi poza wyświetlaniem komunikatu ale samo napisanie aplikacji to już wasze zadanie.

  • Akairis

    A teraz jak uruchomić serwer z konsoli na serwerze, wyjść z konsoli i aby serwer działał nadal?

    • Możesz użyć nohub

      nohup nodejs app.js &

      Lub forever

      npm install -g forever
      forever start app.js

      • Akairis

        Dzięki za info, jednak wcześniej w „Edit” wstawiłem link do tutoriala z forever.

        Pozdr.