Las cookies nos permiten ofrecer nuestros servicios. Al utilizar nuestros servicios, aceptas el uso que hacemos de las cookies. Más Información. Aceptar

¿Cómo instalar una instancia de MEAN.JS en un servidor Ubuntu 14.04?

Luis Alejandro Lucas Flores
  • Escrito por Luis Alejandro Lucas Flores el 13 de Enero de 2015
  • 5 min de lectura | Linux
¿Cómo instalar una instancia de MEAN.JS en un servidor Ubuntu 14.04?

Introducción

MEAN.JS es una solución todo en uno para desarrollo en JavaScript que engloba lo mejor de las tecnologías JavaScript de manera que se pueden conseguir aplicaciones en fase de producción de modo fácil y rápido. MEAN.JS se compone de MongoDB, ExpressJS, AngularJS, y Node.

En esta guía, instalaremos cada uno de estos componentes en un servidor Ubuntu 14.04. Esto nos dará las aplicaciones y estructuras que necesitamos para crear y entregar aplicaciones MEAN fácilmente.

Requisitos

Para empezar con esta guía, necesitarás tener acceso a un servidor Ubuntu 14.04. No se descarta que funcione para alguna otra distribución de Linux, pero nos basaremos en esta en concreto.

Necesitarás una cuenta que no sea root con privilegios sudo para instalar y configurar correctamente los componentes con los que vamos a trabajar.


Descargar e Instalar MongoDB y sus dependencias a través de Apt

A lo largo de esta guía, iremos instalando el software necesario usando un número diferente de técnicas dependiendo de los requerimiento de cada proyecto. El primer conjunto de instalación usará el comando apt , que es el sistema de administración de paquetes de Ubuntu.

Antes de que podamos empezar a instalar el software, vamos a añadir un repositorio adicional con los paquetes de MongoDB actualizados hasta la fecha. Este repositorio nos lo proveerá el propio proyecto de MongoDB, así que siempre dispondremos de versiones recientes y estables del mismo.

Primero, debemos añadir la clave MongoDB a la lista de claves de confianza de nuestro sistema operativo.Esto nos permitirá confirmar que los paquetes son genuinos. El siguiente comando añadirá la clave correcta a nuestra lista (si lo deseas, puedes verificar la ID de la clave a través de la documentación oficial de MongoDB ).


sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10


Ahora que confiamos en los paquetes firmados por los mantenedores de MongoDB, necesitamos añadir una referencia al repositorio en si mismo en nuestra configuración de apt . Podemos crear un archivo a parte que se surta de apt con la referencia correcta al repositorio escribiendo:


echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list


Ahora nuestro sistema está configurado con el nuevo repositorio de MongoDB. Es una buena idea que actualicemos nuestro sistema de control de paquetes local para que tenga conocimiento de los nuevos paquetes, y entonces podamos instalar el software que necesitamos.

Vamos a instalar los paquetes de MongoDB para usarlos como nuestra base de datos, git para ayudarnos con futuras instalaciones, y algunos paquetes que necesitaremos como dependencias y dependencias de construcción de Node:


sudo apt-get update
sudo apt-get install mongodb-org git build-essential openssl libssl-dev pkg-config


Una vez que las instalaciones se hayan completado, podemos continuar con Node.

Descarga, Compilación e Instalación de Node desde su fuente

Node es un proyecto que se mueve muy rápido, lanzando diferentes versiones en poco tiempo. Para poder obtener una copia de la versión mas actualizada de Node, compilada para correr en nuestro sistema específicamente, vamos a descargar el código fuente mas reciente y a compilar el binario manualmente. Este procedimiento es el mas directo y puro que podemos usar.

Primero nos dirigimos a la sección de descarga de Node en su sitio web . En la sección principal de la página, hay enlaces de descarga separados por sistema operativo, al igual que un enlace al codigo fuente en la esquina superior derecha de cada descargar:


Imagen 0 en ¿Cómo instalar una instancia de MEAN.JS en un servidor Ubuntu 14.04?


Haz click derecho en el enlace del código fuente y selecciona "Copiar la dirección del enlace" o cualquiera opción que sea similar en tu navegador.

Volviendo a tu servidor, muévete hasta tu carpeta home home y utiliza el comando wget para descargar el código fuente del link que acabas de copiar. La URL del código fuente de Node que tengas será algo diferente a la que ves debajo:


cd ~
wget http://nodejs.org/dist/v0.10.33/node-v0.10.33.tar.gz


Una vez que se haya descargado el archivo, extráelo usando el comando tar :


tar xzvf node-v*


Con esto se creará la estructura de directorios que contiene el código fuente. Nos movemos hacia el directorio:


cd node-v*


Ahora que ya hemos instalado todas las dependencias de Node, usando el comando apt como vimos en la última sección de este tutorial, podemos empezar a compilar el software. Configuramos y compilamos el software usando estos comandos:


./configure
make


Una vez que el software este compilado, lo podemos instalar en nuestro sistema escribiendo:


sudo make install


Ahora Node estará instalado en nuestro sistema, junto con algunas aplicaciones que le ayudan. Antes de que continuemos, podemos deshacernos del código fuente y la estructura de directorio de la misma para mantener nuestro sistema limpio:


cd ~
rm -rf ~/node-v*


Instalar el Resto de Componentes con NPM, Git, y Bower

Ahora que tenemos Node instalado, podemos acceder al administrador de paquetes npm , el cual podemos usar para instalar algunas de las otras partes de software que necesitamos.

MEAN.JS utiliza un administrador de paquetes propio por separado, llamado bower , para administrar los paquetes de las aplicaciones front-end. Además también utiliza el Grunt Task Runner para automatizar algunas tareas comunes. Así que como estos son paquetes de administración que deberíamos de tener disponibles para asistirnos en cada aplicación que creemos, debemos de ordenar a npm que las necesitamos instalar de forma global:


sudo npm install -g bower grunt-cli


Ahora, finalmente tenemos todos los paquetes requeridos instalados. Por fin podemos instalar realmente MEAN.JS y usarlo para crear aplicaciones. Vamos a clonar el repositorio oficial de GitHub dentro de un directorio en /opt/mean con el objetivo de tener la versión mas actualizada del proyecto:


sudo git clone https://github.com/meanjs/mean.git /opt/mean


Entramos al directorio y le ordenamos a npm que instale todos y cada uno de los paquetes a los que hace referencia el proyecto. Necesitamos usar sudo ya que nos encontramos en un directorio de sistema:


cd /opt/mean
sudo npm install


Finalmente, debido a que estamos en un directorio de sistema, necesitamos llamar a bower con sudo y la opción --allow-root para instalar y configurar nuestros paquetes front-end:


sudo bower --allow-root --config.interactive=false install


Ver los Resultados

MEAN.JS está completamente instalado ahora. Podemos lanzar la aplicación de ejemplo usando el Grunt Task Runner dentro de nuestro directorio. Esto hará que la aplicación se lance, permitiendo que empiece a aceptar peticiones (requests):


cd /opt/mean
grunt


Una vez que el proceso comience, puedes visitar el nombre de dominio de tu servidor o su IP en tu navegador a través del puerto "3000":


http://server_domain_or_IP:3000


Y deberías de ver la aplicación de ejemplo de MEAN.JS:


Imagen 1 en ¿Cómo instalar una instancia de MEAN.JS en un servidor Ubuntu 14.04?


Conclusión

Ahora que tienes los componentes necesarios y el boilerplate MEAN.JS, puedes comenzar a diseñar e implementar tus propias aplicaciones. Echa un vistazo a la documentación sobre MEAN.JS en su sitio web para mas ayuda especifica acerca de como trabajar con MEAN.JS .

Cuando consigas que tu aplicación este funcionando, probablemente querrás configurar un proxy reverso a tu servidor de aplicaciones con el objetivo de alimentar las conexiones a tu aplicación. Esto lo haremos mas tarde, en otra guía.

Estas son algunas de las empresas que ya confían en OpenWebinars

Profesores y profesionales

Nuestros docentes son profesionales que trabajan día a día en la materia que imparten

Conviértete en profesor de OpenWebinars