Tutorial: Correr NodeJS en VPS, VestaCP

Saag10 Seguir

Gamma
Programador
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
2 Jul 2015
Mensajes
276
Hola amigos, sabemos que PHP poco a poco está quedando en el olvido y Javascript está tomando lugar muy grande no solo en el ambiente web, sino también fuera de este.

Les traigo un tutorial para correr NodeJs en VPS ya que necesita un puerto igual que en apache. Para empezar, La mayoría de los servidores vienen por default con Nginx que corre en el puerto 80 por lo que Node tendrá que correr con otro puerto pero se tendrá que hacer un par de configuraciones en los VIrtualServer, ¿Cómo se hace eso?. Bueno pues lo verás en el próximo canal a la misma hora.....

Sobre la instalación y arranque ya deberás saber cómo hacerlo, yo solo explicaré cómo hacer para que corra Node sobre VPS. El tutoria está explicado para avanzados y medios. No hace falta explicar muchas cosas. Así que pondré algunos detalles y otros los omitiré.


1.- En mi caso yo uso CentOS con RHEL y para empezar tendrás que isntalar NodeJS globalmente:

Hago un update para actualizar cualquier dependencia que se requiera.-

Insertar CODE, HTML o PHP:
yum -y update

Insertar CODE, HTML o PHP:
yum -y install nodejs

y con este viene incluido NPM

2.- Si tu aplicación requiere MongoDB

Pues usa:
Insertar CODE, HTML o PHP:
sudo yum install -y mongodb-org

A veces puede causar algunos problemitas por el iptables, solo hay que desactivarlas.

Insertar CODE, HTML o PHP:
 /etc/init.d/iptables save
 /etc/init.d/iptables stop
chkconfig iptables off

Recuerda que todo lo que haces está en modo Root. Para que tengas cuidado.

3.- Ya con esto listo, tendrás que crear un dominio en VestaCP. No creo que vayas a correr tu aplicación en la IP pública que te dieron. Si es así , cuando estés corriendo node y su respectivo puerto pues solo pon tu [IP]:[puerto], ejemplo: http://1111.222.333.44:1000.

En VestaCP, le das a la pestaña WEB y en el botón verde para agregar tu dominio.
uno.png
dos.png

Para agregar el DNS a tu dominio le das click a tu nombre y hasta abajo vienen 2 DNS, que puedes personalizarlos hasta cierto punto. Esos 2 DNS agrégalos donde compraste el dominio. Solo faltará esperar un buen rato para que se dispersen alrededor del mundo.
tres.png
Cuatro.png

4.- Ya hecho esto, tendremos qué ir a la carpeta de configuraciones para los virtualservers y sepan qué puerto es el correspondiente al dominio.
Para eso, tendrás que hacerlo desde la terminal.

Insertar CODE, HTML o PHP:
nano /home/[usuario]/conf/web/httpd.conf

Cuando entres verás algo similar a esto:
cinco.png

Cada página que tengas agregada estará dentro de las etiquetas <VirtualHos IP:puerto></VirtualHost>.
Agrega lo siguiente antes del cierre de etiqueta </VirtualHost>

Insertar CODE, HTML o PHP:
<Location />
         ProxyPassReverse  http://[IP]:[Puerto]/
         ProxyPass  http://[IP]:[Puerto]/ connectiontimeout=5 timeout=30
    </Location>

De esta manera:

seis.png

5.- Pon tu aplicación en la carpeta correspondiente. Se encontrará en la ruta /home/[usuario]/web/[dominio]/public_html

Yo personalmente para subir los archivos uso GIT, pero puedes usar scp o rsync.

Ahora solo falta probar tu aplicación con node server.js o npm start. Si funciona podrás comprobarlo entrando en tu dominio(Ya que haya sido guardado globalmente), si corre es porque todo lo hiciste bien :D.


6.- Para finalizar solo falta correr node automaticaménte. Hay muchas formas pero la que yo utilizo es esta:

Insertar CODE, HTML o PHP:
nano /etc/rc.local

Y dentro del archivo poner lo siguiente:

Insertar CODE, HTML o PHP:
cd /home/[usuario]/web/[Tuweb]/public_html
node server.js &

siete.png

Ya que hayas comprobado que todo estuvo correctamente hecho, solo reinicia el server y listo. Tu aplicación en NodeJS ahora en cines.
Yo tengo almacenadas 3 webs en Node y 4 en Apache y solo me consumen 200 mb de ram. Osea que es muy poco. Si te interesa ver mi página hecha completamente hecha en Javascript, pídemela por MP.

Si me equivoqué en algo, déjalo en los comentarios ya que ando un poco develado :p8: . Espero le funcione a alguien y lo deje dicho abajo. Saludos


--> [SUB]Pink Floyd se escuchaba mientras se hacía este tutorial.[/SUB]
 

Carlos Arreola

Admin
Sigma
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
Verificado por Binance
¡Excelente comerciante!
Suscripción a IA
Desde
6 Abr 2009
Mensajes
11.461
Gracias por el aporte :encouragement:
 

¡Regístrate y comienza a ganar!

Beneficios

  • Gana dinero por participar
  • Gana dinero por recomendarnos
  • Descubre ofertas de empleo diariamente
  • Negocios seguros
  • ¡Información premium y más!

Acceder

¿Ya tienes una cuenta? Accede aquí

Arriba