Public | Automated Build

Last pushed: 2 years ago
Short Description
Imagen para el despliegue automático del Submodulo de la red social Analytics de la ETSIIT
Full Description

Submodulo Red social: Analytics y BD de juegos

Este proyecto participa en el Certamen de Proyectos Libres de la Universidad de Granada 2015-2016 como parte del proyecto Red social.

Para consultar las bases, ir aquí

Descripción

Este submódulo se encargará de hacer un análisis de datos de los usuarios dentro de los juegos de la red social. El módulo también se encargará de la gestión de usuarios de los jugadores. Se enlazará la información de los usuarios de la red social a los juegos para evitar el registro y la autenticación, en caso de que el jugador sea externo a la red social se dispondrá de un registro de usuarios.

Este submódulo pertenece al proyecto llamado Red social el cuál dispondrá de chat, juegos, mensajería interna, bases de datos, análisis y minería de datos de los jugadores...

Herramientas de desarrollo

-Node.js: Con esta herramienta se desarrollará el servidor que gestionará los usuarios y el que realizará el análisis de datos.

-Socket.io: Este se utilizará para la comunicación cliente servidor.

-HTML5: Lo usaremos para la parte del registro de usuarios de los clientes externos a la red social.

-R: Utilizaremos r junto a Knime para el análisis e datos.

-MongoDB: Es una base de datos NoSql donde se almacenarán los usuarios de los diferentes juegos y los datos para el análisis de datos.

-Mocha: Esta herramienta la utilizaremos para los test.

-Travis CI: Con esta herramienta se encargará de la integración continua.

-Azure: Usaremos Azure para el despliegue en un PaaS/IaaS.

Despliegue en PaaS

La aplicación se despliega en heroku. Se ha elegido esta plataforma porque ofrece varios servicios de forma gratuita además de su facilidad de uso. El archivo de configuración de dicho despliegue es el archivo Procfile. Se puede acceder a la aplicación desde la dirección http://submodulo-red-social-analytics.herokuapp.com/.

Este Paas soporta el lenguaje que hemos elegido para nuestro desarrollo "Node.js", además de múltiples lenguajes.

Otro motivo para su utilización es la utilización del proceso de despliegue automático a partir de un repositorio, en este caso soportando el cliente Github donde se encuentra el repoitorio de mi proyecto. Lo voy a explicar en dos pasos, primero conectamos con nuestro repositorio en Github proporcionandole la dirección, y segundo, habilitando la opción de "Automatic deploys" desde una rama del repositorio, en nuestro caso la rama Master.

En el siguiente enlace se puede ver un ciclo completo de despliegue en heroku de nuestra app:

Prueba Despliegue

Instalación

  • Código

    git clone https://github.com/luishexen/Submodulo-Red-social-Analytics.git
    cd Submodulo-Red-social-Analytics
    
  • Instalación de dependencias
    npm install

  • Ejecución
    npm start

    Y por último usamos este enlace localhost

Docker

En este enlace está la imagen para el despliegue automático del submódulo de la red social. Es necesario utilizar docker para desplegarlo y luego lanzarlo.

Cabe destacar que ha sido sincronizado con este repositorio para actualizarse automáticamente.

Para poner todo el contenedor en funcionamiento en cualquier máquina con Ubuntu se tendrán que realizar los siguientes pasos:

docker pull luishexen/submodulo-red-social-analytics
docker run -i -t -p 5000:5000 luishexen/submodulo-red-social-analytics /bin/bash

Con lo anterior ya tendremos el contenedor en nuestro ordenador y ejecutándose, ahora solo tenemos que iniciar el servidor de la aplicación web:

cd home/Submodulo-Red-social-Analytics/
npm start

Con lo anterior ya tendremos el programa escuchando en el puerto 5000. A continuación si queremos acceder a nuestra aplicación que se está ejecutandose en la máquina solo tenemos que ejecutar el comando 'ifconfig' (En la consola del ordenador que alberga docker) y poner esa IP y el puerto 5000

En mi caso http://172.17.42.1:5000/. La IP puede cambiar entre diferentes máquinas.

Docker Pull Command
Owner
luishexen