Skip to content

Trabajo Practico Integrador - Taller Web 1- 2025

Notifications You must be signed in to change notification settings

rioslucas1/TP-TW1

Repository files navigation

Proyecto base Taller Web I (Maven and Thymeleaf)

1. Como iniciar el proyecto

$ mvn clean jetty:run
# http://localhost:8080/spring

2. Thymeleaf

3. Hamcrest

4. GitHub Actions

5. Playwright

6. Jetty

7. Como correr las pruebas de punta a punta

Iniciar el servidor

$ mvn clean jetty:run

Correr las pruebas en otra terminal

$ mvn test -Dtest="VistaLoginE2E"

docker compose up --build

8. Como correr las pruebas unitarias de javascript

$ cd src/main/webapp/resources/core/js
// Si es la primera vez debo descargar las dependencias
$ npm install
// Ejecuto las pruebas
$ npm test

9. Docker:

Los archivos de docker de este proyecto estan preparados para desplegar un archivo WAR usando el servido Jetty o Tomcat El archivo de docker para Jetty y Tomcat esperan que el archivo WAR se debe llamar "tallerwebi-base-1.0-SNAPSHOT" para eso debemos modificar los atributos y del archivo pom.xml

Para generar un archivo WAR debemos ejecutar maven

mvn clean package

Una vez que tenemos el archivo WAR, debemos generar la imagen de docker

docker build -f DockerfileJetty -t tallerwebi .
docker build -f DockerfileTomcat -t tallerwebi .

Una vez que tenemos la imagen generada, podemos instanciar un contenedor y ejecutarlo.

docker run -p 8080:8080 tallerwebi

9. Comandos básicod:

# Crear una imagen con el nombre "tallerwebi".
docker build -f DockerfileJetty -t tallerwebi .

# Instancia y ejecuta un contendor en base a la imagen "tallerwebi". 
docker run -p 8080:8080 tallerwebi 

# Ejecuta un contendor ya instanciado.
docker start <containerId> 

# Instancia un contendor en base a la imagen tallerwebi para ejecutar bash.
docker run -it --entrypoint /bin/bash tallerwebi

# Muestra los logs.
docker logs <containerId>

# Muestra todos los contenedores creados.
docker ps -a 

# Muestra todas las imagenes creadas.
docker images

# Elimina un contenedor.
docker rm <containerId>

# Elimina una imagen.
docker rmi <imageId>

# Crear una imagen con el nombre "mysql".
docker build -f DockerfileSQL -t mysql .

# Instancia un contendor en base a la imagen mysql.
docker run --name mysql-container -d -p 3306:3306 mysql # sudo apt install mysql-client

9. Tecnologías:

  • Java 11
  • Spring 5.2.22.RELEASE
  • Thymeleaf 3.0.15.RELEASE
  • Embedded Jetty Server 9.4.45.v20220203
  • Servlet API 4.0.4
  • Bootstrap 5.2.0 (webjars)
  • IntelliJ IDEA
  • Maven 3.8.6
  • Spring Test 5.2.22.RELEASE
  • Hamcrest 2.2
  • JUnit 5.9
  • Hibernate 5.4.24.Final
  • Mockito 5.3.1
  • Playwright 1.36.0
  • Node 18.16.1 o superior <- Instalación manual desde la página de node

_Proyecto modificado en base a: Spring MVC hello world example (Maven and Thymeleaf) _ aaaa

About

Trabajo Practico Integrador - Taller Web 1- 2025

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5