- Creo una base de datos en ElephantSQL
- Cambio el datasource de JPA y el dialecto
org.hibernate.dialect.PostgreSQLDialect
. Puedes ver qué debes poner en la documentación de ElephantSQL para Java. - Una vez cambiado eso voy a cargar los datos de los participantes en la BD ya en la nube. Descomento las líneas del main que lo hacen y lanzo la API. Ya podré ver que todo funciona correctamente pero ahora ya no tengo H2.
- Una vez cargada la BD y funcionando toca subir la API.
- Creo una aplicación en Heroku. Se puede desplegar todo usando el CLI.
- Lo más cómodo es enlazar el repositorio de GitHub donde tengamos el código fuente (para que se construya debe tener acceso a todas las dependencias, por eso ya cambiamos la dependencia
datos-deportivos
a un repositorio). Así incluso podemos tener nuestro despliegue continuo (cada commit se despliega) - Primero tenemos que subir nuestro código con los últimos cambios, pero sin las credenciales de la BD (¡ojo con subir credenciales!)
- Una vez enlazado el repositorio ya veremos que podemos desplegar la aplicación. Pero nos faltan las credenciales para conectar con la BD. Vamos a ponerlas como una variable en Heroku para que la use sobrescribiendo lo que haya en el archivo de propiedades.
DATABASE_URL: postgres://usuario:password@server.com:5432/usuario
- Y con esto ya podemos darle a deploy.
Cuando termine de ejecutarse, si todo ha ido bien, podemos acceder a nuestra API RESTful en la url
que nos proporcione Heroku. Todo en la nube, sin coste alguno y sin administrar ninguna máquina.
Puedes ver el código hasta aquí en su repositorio.
NOTA: Con el fin de Heroku gratis el 28 de noviembre de 2022, se propone usar como alternativa Railway.
No hay comentarios:
Publicar un comentario