- IDE compatible con proyectos MAVEN o tener instalado MAVEN en su equipo
- Java 11 (JDK11)
- Por default se usa la base de datos embedded h2. Si desea usar PostgreSQL, lea PostgreSQL.md
Debe clonar el proyecto de https://github.com/jokoframework/joko_backend_starter_kit.git
$ git clone https://github.com/jokoframework/joko_backend_starter_kit.git
$ cd joko_backend_starter_kitUna vez terminado el paso anterior (Clonar proyecto), ir a su carpeta personal /home/username, abrir terminal y ejecutar lo siguiente:
# Si no existe el directorio, crearlo y luego cambiarse al directorio
$ mkdir .m2
$ cd .m2Cuando estemos en la carpeta .m2, se debe crear un archivo vacío llamado settings.xml y pegar lo siguiente dentro del archivo:
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
http://maven.apache.org/xsd/settings-1.0.0.xsd">
<activeProfiles>
<activeProfile>github</activeProfile>
</activeProfiles>
<profiles>
<profile>
<id>github</id>
<repositories>
<repository>
<id>central</id>
<url>https://repo1.maven.org/maven2</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</repository>
<repository>
<id>github</id>
<name>GitHub jokoframework Apache Maven Packages</name>
<url>https://maven.pkg.github.com/jokoframework/security</url>
</repository>
</repositories>
</profile>
</profiles>
<servers>
<server>
<id>github</id>
<username>USERNAME</username>
<password>PERSONAL ACCESS TOKEN</password>
</server>
</servers>
</settings>USERNAME corresponde tu usuario de GitHub y el PERSONAL ACCESS TOKEN corresponde al token de accesso personal de dicho usuario. En caso de no tener un token, se puede crear uno siguiendo la siguiente guía https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/creating-a-personal-access-token
Sólo es necesario el permiso: read:packages Download packages from GitHub Package Registry
Esto permite utilizar los github packages para obtener las dependencias de joko-utils y security
Para probar que se puede compilar el proyecto ejecutar en el directorio clonado con el git Esto demorará unos minutos en su primera ejecución; la descarga de las librerías necesarias se realiza sólo la primera vez.
$ mvn compileLa forma más simple de levantar el proyecto es con la utilización de Docker. En caso de no tenerlo instalado, se debe seguir la instalación oficial según el sistema operativo: https://docs.docker.com/engine/install/ Luego se debe copiar el archivo de ejemplo env.sample ejecutando el siguiente comando dentro del proyecto:
cp env.sample .envAhí debes cambiar las variables APPLICATION_ROOT_FOLDER y MAVEN_SETTINGS_FOLDER para que apunten a los directorios en tu equipo.
Finalmente levantamos la aplicación con el comando
docker-compose upó si ya se está usando la versión del compose como plugin
docker compose up
Se debe ejecutar lo siguiente dentro del proyecto:
mvn clean package
cd target/
java -jar joko-backend-starter-kit-1.0.9.jarSi todavía no tenemos ninguna de las librerías instaladas (joko-utils y security) entonces se procede con una de las siguientes opciones:
Posteriormente, nos vamos a la carpeta del proyecto, abrimos terminal y ejecutamos lo siguiente para levantar el proyecto:
$ mvn spring-boot:runEl usuario/password default que se crea con la base de datos, es admin/123456
El proyecto usa por default la base de datos Embedded h2.
Primero se abre la carpeta del proyecto en el STS y esperamos a que descargue todas las dependencias necesarias.
Una vez terminado el proceso (puede tardar unos minutos) le damos a RUN AS y luego SPRING BOOT APP.
La mayoría de los IDEs soportan ejecución de aplicaciones tipo Spring Boot o permiten configurar ejecuciones customizadas de maven.
El proyecto cuenta con documentación del API accesible desde el swagger-ui. URI al swagger desde máquina HOST:
http://localhost:8080/swagger-ui/
OBS. Si se desea abrir la página desde algún Windows u otro SO interno:
http://"IP DE LA MAQUINA HOST":8080/swagger-ui/