Este repositorio contiene los servicios a montar (via docker) para montar la plataforma IoTicos GL.
El mismo fue desarrollado en el curso IoT Bootcamp God Level.
Instalar la plataforma en Linux es muy simple. Ya que para tal fin desarrollamos un instalador que encontrar谩s aqu铆:
https://github.com/ioticos/ioticos_god_level_services/blob/master/install_ioticosgl.sh
Copia el contenido del archivo install_ioticosgl.sh En el servidor linux (Ubuntu LTS recomendado) crearemos un archivo llamado install.sh con el comando:
sudo nano install.sh
Una vez en el editor nano pegamos el contenido que hab铆amos copiado.
Grabamos con ctrl + X luego presionar "enter" luego presionar "Y".
Ahora ejecutaremos el siguiente comando para darle permisos totales al archivo recientemente creado.
sudo chmod 777 install.sh
(Luego de instalar la plataforma borraremos este archivo)
Ahora s铆, momento de ejecutar nuestro instalador. (El mismo obtendra tanto los servicios como la app de los repositorios de IoTicos, en el c贸digo del instalador puedes reemplazar sendos repositorios por los tuyos )
sudo ./install.sh
Y listo, debemos responder el cuestionario para efectuar la instalaci贸n.
Aclaraci贸n:
Luego de ejecutar el instalador la plataforma quedar谩 corriendo en su totalidad.
Como ver谩n en el repositorio tenemos tres archivos docker-compose importantes.
- docker_node_install.yml:
Este compose, lo ejecutaremos cuando a futuro necesitemos instalar dependencias nuevas v铆a npm.
- docker_nuxt_build.yml:
Este compose, lo ejecutaremos cuando por ejemplo, modificamos el c贸digo de nuestro repositorio (algo en el front po ejemplo) y necesitemos llevar estos cambios a producci贸n. Al ejecutar este compose, estaremos haciendo un "build" con nuxt. Lo que recompilara tanto c贸digo front como el de nuestra api.
- docker_compose_production.yml
Este 煤ltimo es el que lanza a producci贸n nuestra plataforma. Y es el 煤nico que deber铆amos correr con el "-d" al final de comando para que quede corriendo como servicio.
En los 2 casos anteriores, se recomienda hacerlo sin el -d para observar la salida.
En los 2 casos anteriores, (install y build), una vez que se ejecutan y terminan su tarea, los mismos finalizan con un exit. (no quedan corriendo) Lo que es normal.
IMPORTANTE:
El motivo por el cual separamos install - build - production en tres contenedores, (siendo que se podr铆a hacer todo junto) es para evitar saturar procesador y memoria servidores peque帽os.