Proyecto API Rest en Java con Spring boot que permite el registro y autenticación de usuarios. El API está documentada con Swagger.
La base de datos usada es H2. Para la seguridad se implementa Spring Security con JWT que garantiza el acceso al API con autenticación.
- Java 11
- Java 11
- Spring boot
- Spring Security
- PostgreSQL
- H2
- JWT
- Open API
En caso de preferir PostgreSQL, actualiza las configuraciones de la base de datos en el archivo src/main/resources/application-${perfil}.yml
con las
credenciales de la base de datos.
spring:
datasource:
type:com.zaxxer.hikari.HikariDataSource
url:jdbc:postgresql://${HOST}:${PORT}/${DBNAME}
driver-class-name:org.postgresql.Driver
username:${USER}
password:${PASS}
La documentación de la API se genera automáticamente con Swagger. Puedes acceder a ella en swagger-ui después de iniciar la aplicación.
$ gradle build
$ .\gradlew.bat test
- Asegúrate de tener Docker instalado en tu máquina.
- Desde la raíz del proyecto, construye la imagen de Docker ejecutando el siguiente comando:
docker build --tag user-management-api-i -f Dockerfile.mem .
En el caso de usar PostgreSQL, usa el siguiente
docker build --tag user-management-api-i --build-arg PASS=<password> --build-arg USER=<user> --build-arg HOST=<host> --build-arg PORT=<port> --build-arg DBNAME=<name> .
- Después de que se haya construido la imagen, ejecuta el contenedor con el siguiente comando:
docker run --name user-management-api-i-con -d -p 8080:8080 user-management-api-i:latest
La API ahora estará en funcionamiento y será accesible en http://localhost:8080 desde tu máquina local.