Monitorización de líneas de producción
Proyecto para la asignatura de Cloud Computing en el Máster en Ingeniería Informática UGR.
Heroku
La imagen del microservicio está desplegada en Heroku. Para comprobarlo se puede usar la url: https://cc-notifier.herokuapp.com/hello.
Se ha elegido Heroku como PaaS por ser relativamente famoso, ya que hace que haya mucha documentación sobre él. Además, es gratuito y muy sencillo de usar.
Antes de empezar Heroku asigna en una variable de entorno un puerto por defecto que se tiene que usar como
en el Dockerfile. Es decir, no se puede poner un número de puerto explícito para levantar nuestro servicio, si no, que deberemos leer este valor desde una variable de entorno. En este caso la variable que hay que usar es `$PORT`. Se puede consultar en el archivo [Dockerfile][enlace_dockerfile] cómo hacerlo.
Para desplegarla se han seguido los siguientes pasos:
- Descargarse la interfaz de comandos
Heroku CLI
- Crear una aplicación:
$ heroku create <nombre_aplicación>
Tras este comando debe aparecer un nuevo repositorio
remote
llamadoheroku
. Se puede comprobar fácilmente haciendogit remote -v
. - Creamos el fichero
heroku.yml
en la raíz de nuestra aplicación. Para ver como se ha construido se puede consultar el propio fichero, aunque, básicamente, lo que hacemos es indicar que vamos a usar elDockerfile
. - Hacer
commit
de los cambios. - Establecer como imagen del SO la de Docker.
$ heroku stack:set container
Con esto indicamos que vamos usar Docker. En Heroku
stack
es una imagen de sistema operativo. Por defecto se usaHeroku-18
, pero nosotros queremos usarcontainer
que es la correspondiente a Docker. - Hacemos
push
de nuestra aplicación a Heroku.$ git push heroku master
Tras esto podemos consultar en
Heroku
el despliegue de la aplicación.
Cómo añadido se ha vinculado el repositorio de
Github
para que cuando se hagapush
automáticamente se despliegue la aplicación. Para más información se puede consultar la documentación donde se explica el proceso.