Creé un nuevo proyecto Spring Boot usando Eclipse y quería desplegarlo en Tomcat en forma de paquete de guerra. Directamente a través de la herramienta IDE, puede iniciarse de forma normal, como se muestra en la figura siguiente:
¿Cómo empaqueto un proyecto de Maven en un paquete de guerra?
Modificar el archivo pom.xml
Encuentra el nodo del proyecto y añade la siguiente configuración:
En el nodo de dependencias, se introduce spring-boot-starter-tomcat en la parte inferior, de la siguiente manera:
Spring-Boot-Starter-Tomcat se modifica acon tal quePara evitar conflictos con contenedores Tomcat independientes, lo que significa que Provided solo se usa al compilar y probar, y desaparece cuando se empaqueta.
Alias el proyecto, encuentra el nodo de construcción y añadefinalNameLa configuración es la siguiente:
Si no lo añades, el nombre del proyecto es tu versión artefactId, y el nombre del paquete war generado también es artefactId-version.war (por ejemplo, demo-1-0.0.1-SNAPSHOT.war), y el nombre del proyecto es demasiado largo cuando el navegador accede a él.
Crea un archivo ServletInitializer, heredando de SpringBootServletInitializer, y anula el método configure de la siguiente manera:
Compilar y empaquetar
Empaquetado mediante el comando Maven, el comando es el siguiente:
Desde el directorio de destino, puedes ver los paquetes de guerra generados, como se muestra en la siguiente figura:
Desplegar en un contenedor Docker
Primero, crea una carpeta /data/webapps en la máquina anfitriona con el siguiente comando:
Inicia un contenedor tomcat con el siguiente comando:
Sube itsvse.war en la carpeta /data/webapps y accede a él desde tu navegador:http://192.168.50.227:8888/itsvse/home/test, como se muestra en la figura siguiente:
(Fin)
|