Een probleem waar ik met nodejs tegenaan liep en waar vermoedelijk meerdere mensen tegenaan lopen is: Hoe krijg ik mijn nodejs app draaiend op mijn server. Het antwoord is wat mij betreft als volgt. Een webserver waar CentOs op draait in combinatie met nginx en nodejs.
Een eigen server en root toegang
Om de server goed in te kunnen richten heb je een server nodig waar centos op draait en je hebt root toegang op de server nodig. Ik heb hiervoor een vps draaien waar ik volledige toegang tot heb. Voor een goedkope goede vps kun je terecht bij bijvoorbeeld transip.
Yum update
Op het moment dat je een nieuwe centos installatie op de server hebt staan is het noodzakelijk dat je alle packages op de server update. Dit doe je door het volgende commando in te voeren:
yum update
Na de uitvoer van dit commando zijn al je package sup to date en kunnen we aan de slag.
Nginx installeren
Nginx is niet beschikbaar in de standaard yum repositories. Om nginx toch beschikbaar te maken moeten we de epel repository toe gaan voegen. Dit doe je door het volgende commando uit te voeren:
sudo su -c 'rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm'
Op dit moment is de epel repository beschikbaar en kunnen we nginx gaan installeren op de server. Voer het volgende commando uit:
sudo yum install nginx
Op dit moment is nginx geinstalleerd op de server maar nog niet gestart. Om nginx te starten type je het volgende commando:
sudo /etc/init.d/nginx start
Om te testen of het allemaal goed is gegaan kun je in je browser naar het ip adres van je server browsen. Je zou nu de standaard nginx pagina te zien moeten krijgen. ALs je het ip adres van je server niet weet kun je het volgende commando uitvoeren:
ifconfig eth0 | grep inet | awk '{ print $2 }'
Nodejs installeren
Voor Nodejs geld hetzelfde als voor nginx, de package is niet beschikbaar middels yum. Gelukkig kunnen we het wel goed installeren zonder gebruik van yum te maken, we hebben hiervoor alleen wel de Development tools nodig. Deze installeer je als volgt:
yum groupinstall "Development Tools"
Hierna kunnen we met het echte werk beginnen, NodeJs. Navigeer naar de /tmp directory op je server en voer het volgende commando uit:
wget http://nodejs.org/dist/node-latest.tar.gz
Mocht wget niet geinstalleerd zijn, kun je deze als volgt installeren:
yum install wget
Nadat wget geinstalleerd is voer je nogmaals bovenstaand commando uit gevolgd door de volgende commando’s:
tar -xzf node-latest.tar.gz cd [node directory]
Je zit nu in de directory waarin nodejs is uitgepakt. Voer de volgende commando’s uit:
./configure make make install
Gefeliciteerd, NodeJs en Nginx zijn nu geinstalleerd. In de volgende post zal ik uitleggen hoe je met Nginx virtuele hosts aanmaakt zodat je domeinnamen aan nodejs applications kunt gaan koppelen.
Reageren