Para esta practica usaremos la version 9 de tomcat
Primero que todo instalamos ufw para cambiar el puerto a Tomcat
sudo apt update
sudo apt install ufw
Ahora queremos que el puerto por defecto del Tomcat sea 8080.
sudo ufw allow 8080
Ahora actualizamos los paquetes de nuevo:
sudo apt update
Instalamos Java:
sudo apt install openjdk-11-jdk -y
Instalamos apache tomcat:
sudo apt install tomcat9 -y
Añadimos el grupo tomcat9:
sudo groupadd tomcat9
Añadimos el grupo:
sudo useradd -s /bin/false -g tomcat9 -d /etc/tomcat9 tomcat9
Tomcat está instalado, iniciamos y comprobamos:
sudo systemctl start tomcat9
sudo systemctl status tomcat9
Ahora definimos el usuario:
sudo nano /etc/tomcat9/tomcat-users.xml
Y ponemos:
<role rolename="admin"/>
<role rolename="admin-gui"/>
<role rolename="manager"/>
<role rolename="manager-gui"/>
<user username="debian11abhiexam" password="abhijeet" roles="admin,admin-gui,manager,manager-gui"/>
Ahora comprobamos el acceso a Tomcat:
http://localhost:8080
Ahora instalamos el tomcat admin:
sudo apt install tomcat9-admin
Y ahora entramos en:
http://localhost:8080/manager/html
Y también en:
http://localhost:8080/host-manager/html
Descargamos el archivo WAR : aquí
Hacemos el login
Buscamos la sesión de despliegue manual
Subimos el archivo y se desplegará.
Instalamos maven con APT:
sudo apt update
sudo apt install maven
y comprobamos la versión:
mvn --v
Ahora tenemos que añadir el rol de manager-script para permitir a que maven se autentique contra tomcat
Modificamos :
/etc/tomcat9/tomcat-users.xml
y le añadimos:
<role rolename="admin"/>
<role rolename="admin-gui"/>
<role rolename="manager"/>
<role rolename="manager-gui"/>
<user username="debian11abhiexam" password="abhijeet" roles="admin,admin-gui,manager,manager-gui"/>
<user username="abhijeet-deploy" password="abhijeet" roles="manager-scripts"/>
Editamos el archivo :
/etc/maven/settings.xml
y añadimos:
<servers>
    <server>
        <id>Tomcat.P.3.1</id>
        <username>abhijeet-deploy</username>
        <password>abhijeet</password>
    </server>
</servers>
Ahora creamos la aplicación de prueba:
mvn archetype:generate -DgroupId=guillermo -DartifactId=war-deploy -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false
Ahora modificamos de nuevo el pom.xml:
<build>
    <finalName>war-deploy</finalName>
    <plugins>
        <plugin>
            <groupId>org.apache.tomcat.maven</groupId>
            <artifactId>tomcat7-maven-plugin</artifactId>
            <version>2.2</version>
            <configuration>
                <url>http://localhost:8080/manager/text</url>
                <server>Tomcat.P.3.1</server>
                <path>/myapp</path>
            </configuration>
        </plugin>
    </plugins>
</build>
Ahora ejecutamos
mvn tomcat7:deploy
Ya aparecera el myapp en el adminsitrador GUI de tomcat desplegada.
Ahora realiza el mismo procedimiento para deplegar una otra aplicacion
Clonamos el repositorio:
git clone https://github.com/cameronmcnz/rock-paper-scissors.git
Situamos dentro de la carpeta
cd rock-paper-scissors
y cambiamos la branca
git checkout patch-1