Options de déploiement
Déploiement automatisé (Terraform) : cliquez sur Run Now pour créer automatiquement un environnement complet avec Terraform, incluant une instance ECS, une adresse IP publique et les règles de groupe de sécurité nécessaires.
Déploiement manuel : si vous disposez déjà d'une instance ECS ou préférez contrôler le processus de déploiement, suivez les étapes ci-dessous.
Prérequis
Activer l'accès au réseau public : attribuez une adresse IP publique fixe ou une Elastic IP (EIP) à l'instance.
-
Ajouter des règles de groupe de sécurité :
Pour Linux : autorisez le trafic entrant TCP sur les ports 22 (SSH) et 8080 (Tomcat).
Pour Windows : autorisez le trafic entrant TCP sur les ports 3389 (RDP) et 8080 (Tomcat).
Déployer manuellement OpenJDK : installez un kit de développement Java (JDK) sur le serveur.
Procédure
Linux
Étape 1 : Télécharger et installer Tomcat
-
Connectez-vous à une instance ECS.
Accédez à ECS console - Instances. Dans le coin supérieur gauche, sélectionnez la région et le groupe de ressources correspondant à l'instance cible.
Accédez à la page de détails de l'instance cible. Cliquez sur Connect et sélectionnez Workbench. Suivez les instructions à l'écran pour accéder au terminal.
-
Téléchargez et extrayez le package d'installation de Tomcat.
Cet exemple utilise Tomcat v9.0.91. Pour installer une autre version, récupérez l'URL de téléchargement depuis le site officiel de Tomcat et remplacez l'URL dans la commande.
# Download the Tomcat installation package sudo wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.91/bin/apache-tomcat-9.0.91.tar.gz --no-check-certificate # Extract the package to the /usr/local/ directory sudo tar -zxvf apache-tomcat-9.0.91.tar.gz -C /usr/local/ -
Créez un lien symbolique.
Cette approche vous permet de mettre à niveau Tomcat en mettant simplement à jour le lien symbolique, sans modifier le fichier de configuration du service.
sudo ln -s /usr/local/apache-tomcat-9.0.91 /usr/local/tomcat
Étape 2 : Configurer le service Tomcat
Configurez Tomcat en tant que service systemd pour activer son démarrage automatique.
-
Récupérez le chemin d'accès au JDK.
sudo readlink -f $(which java)Pour JDK 8 : le chemin correct du JDK est le répertoire parent du dossier
jre.Pour JDK 11 ou versions ultérieures : le chemin renvoyé correspond au chemin correct du JDK.
-
Créez le fichier de service
tomcat.service.sudo tee /etc/systemd/system/tomcat.service > /dev/null <<'EOF'
[Unit]
Description=Apache Tomcat Web Application Container
After=network.target
[Service]
Type=forking
Environment="JAVA_HOME=JDK_PATH"
Environment="CATALINA_PID=/usr/local/tomcat/temp/tomcat.pid"
Environment="CATALINA_HOME=/usr/local/tomcat"
Environment="CATALINA_BASE=/usr/local/tomcat"
ExecStart=/usr/local/tomcat/bin/startup.sh
ExecStop=/usr/local/tomcat/bin/shutdown.sh
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF
Remplacez
JDK_PATHpar le chemin d'accès au JDK obtenu à l'étape précédente. -
Démarrez le service Tomcat et activez-le au démarrage.
# Reload the systemd configuration for the new service file to take effect sudo systemctl daemon-reload # Start the Tomcat service sudo systemctl start tomcat # Enable the Tomcat service to start on boot sudo systemctl enable tomcat
Étape 3 : Vérifier le déploiement
-
Vérifiez l'état du service.
sudo systemctl status tomcatSi la valeur
active (running)est renvoyée, Tomcat a démarré avec succès. -
Vérifiez l'accès.
Dans la barre d'adresse de votre navigateur local, saisissez
http://<ECS instance public IP address>:8080. Si la page d'accueil de Tomcat s'affiche, l'environnement web Java est déployé avec succès.
Windows
Cet exemple montre comment déployer Tomcat 9.0.121 sur une instance Windows Server 2022 64 bits.
Étape 1 : Installer et configurer Tomcat
-
Connectez-vous à une instance ECS.
Accédez à ECS console - Instances. Dans le coin supérieur gauche, sélectionnez la région et le groupe de ressources correspondant à l'instance cible.
Accédez à la page de détails de l'instance cible. Cliquez sur Connect et sélectionnez Workbench. Définissez la méthode de connexion sur Terminal Connection, saisissez votre nom d'utilisateur et votre mot de passe, puis connectez-vous au terminal graphique.
-
Téléchargez Tomcat 9.0.121 et extrayez le package.
Vous pouvez lancer PowerShell et exécuter la commande suivante pour récupérer Tomcat 9.0.121 depuis le référentiel Alibaba Cloud Open Source Mirror.
# 1. Modify the paths below as needed $Url = "https://mirrors.aliyun.com/apache/tomcat/tomcat-9/v9.0.121/bin/apache-tomcat-9.0.121-windows-x64.zip" $Zip = "C:\Downloads\tomcat.zip" # Download Path $Dest = "C:\Applications\tomcat" # Extract Directory # 2. Download and extract the package Invoke-WebRequest $Url -OutFile $Zip Expand-Archive $Zip -DestinationPath $Dest -ForceNous vous recommandons d'extraire le package compressé vers un chemin ne contenant pas de caractères chinois, par exemple
C:\Java\apache-tomcat-9.0.97, afin d'éviter d'éventuels problèmes de reconnaissance de chemin.Si vous avez besoin d'une version différente, rendez-vous sur le site officiel de Tomcat, sélectionnez la version souhaitée, puis téléchargez et extrayez le package d'installation.

-
Configurez les variables d'environnement.
Faites un clic droit sur This PC et sélectionnez .
Dans la zone System variables, cliquez sur New Resources, créez la variable système
CATALINA_HOME, définissez la valeur de la variable sur le chemin d'installation de Tomcat, puis cliquez sur OK.Dans System Variables, recherchez la variable
Path, sélectionnez-la et cliquez sur Modify.Dans Edit environment variable, cliquez sur New Resources, ajoutez
%CATALINA_HOME%\binet cliquez sur OK pour enregistrer la configuration.
Étape 2 : Installer et démarrer le service Tomcat
L'installation de Tomcat en tant que service Windows, plutôt que de l'exécuter temporairement via startup.bat, permet à Tomcat de s'exécuter de manière stable en arrière-plan et d'activer son démarrage automatique.
-
Installez le service.
Ouvrez l'invite de commandes en tant qu'administrateur, accédez au répertoire
binde Tomcat et exécutez la commande d'installation.service.bat install Tomcat9Si le message
The service 'Tomcat9' has been installed.est renvoyé, l'installation a réussi.Tomcat9est un nom de service personnalisé qui sera utilisé lors de la gestion du service. -
Démarrez le service et configurez-le pour qu'il démarre automatiquement.
Faites un clic droit sur
, puis cliquez sur Run, saisissez services.mscet appuyez sur Entrée pour ouvrir le Gestionnaire de services.Localisez le service
Apache Tomcat 9.0 Tomcat9, faites un clic droit sur le service, sélectionnez Type, définissez le Startup Type sur Automatic, puis cliquez sur Start.
Si vous voyez des caractères chinois illisibles dans les journaux, consultez Les journaux Tomcat affichent des caractères chinois illisibles .
Étape 3 : Vérifier le déploiement
Dans la barre d'adresse de votre navigateur, saisissez http://<ECS instance public IP address>:8080. Si la page d'accueil de Tomcat s'affiche, l'environnement web Java est déployé avec succès.
Étapes suivantes
Charger un projet web
Suivez les instructions de la rubrique Utiliser Workbench pour charger ou télécharger des fichiers afin de charger une application web (fichier .war) dans le répertoire racine du site web Tomcat (qui est webapps par défaut). Tomcat détectera et déploiera automatiquement le fichier WAR.
Après le déploiement, vous pouvez accéder à l'application à l'adresse http://<public IP address>:8080/<project name>.
Configurer Tomcat
Modifier le fichier de configuration
Accédez au dossier
confdu répertoire d'installation de Tomcat et ouvrez le fichierserver.xml.-
Modifiez la configuration de Tomcat.
-
Tomcat utilise le port
8080par défaut. Vous pouvez le modifier en changeant la valeur de l'attributport.Après avoir modifié le port, vous devez ajouter une règle de groupe de sécurité pour autoriser le trafic entrant sur le nouveau port.
<!-- A "Connector" represents an endpoint by which request and responses are returned. Documentation at : Java HTTP Connector: /docs/config/http.html Java AJP Connector: /docs/config/ajp.html APR (HTTP/AJP) Connector: /docs/apr.html Define a non-SSL/TLS HTTP/1.1 Connector on port 8080 --> <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" maxParameterCount="1000" /> -
Le répertoire racine du site web par défaut pour Tomcat est
webapps. Pour changer le répertoire racine du site web, vous pouvez modifier la valeur de l'attributappBase.Dans la configuration <Host> suivante issue de server.xml, l'attribut
appBase="webapps"spécifie le répertoire de déploiement des applications :</Realm> <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <!-- SingleSignOn valve, share authentication between web applications Documentation at: /docs/config/valve.html --> <!-- <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> -->
-
Définir les paramètres de mémoire JVM pour Tomcat
Linux
-
Créez un fichier
setenv.sh. Vous pouvez utiliser le fichiersetenv.shpour gérer centralement les paramètres JVM.Ajustez les tailles initiale et maximale du tas JVM en fonction des spécifications de votre instance ECS et de la charge de l'application.
sudo tee /usr/local/tomcat/bin/setenv.sh > /dev/null <<'EOF' #!/bin/bash # Example: For an ECS instance with 2 GB of memory, allocate 512 MB JAVA_OPTS="-server -Xms512m -Xmx512m" export JAVA_OPTS EOF -
Ajoutez des permissions d'exécution au fichier.
sudo chmod +x /usr/local/tomcat/bin/setenv.sh Redémarrez Tomcat pour que la configuration prenne effet.
Windows
Accédez au dossier
bindu répertoire d'installation de Tomcat et ouvrez le fichiercatalina.bat.-
Ajoutez ou modifiez les paramètres JVM.
Au début du fichier (généralement après
setlocalet avantcall "%CATALINA_HOME%\bin\setenv.bat"), ajoutez ou modifiezJAVA_OPTS. Ajustez la mémoire initiale et maximale du tas JVM en fonction des spécifications de l'instance ECS et de la charge de l'application.# Example: For an ECS instance with 2 GB of memory, allocate 512 MB set "JAVA_OPTS=%JAVA_OPTS% -Xms512m -Xmx512m"Si
JAVA_OPTSexiste déjà, ajoutez les paramètres à la suite (notez qu'un espace est requis entre les paramètres). Redémarrez Tomcat pour que la configuration prenne effet.
Recommandations pour l'environnement de production
Pour les environnements de production, prenez les mesures suivantes après le déploiement afin de réduire les risques de sécurité.
-
Supprimer les applications par défaut
Pour réduire la surface d'attaque potentielle, nous vous recommandons de supprimer toutes les applications d'exemple par défaut situées dans le répertoire
webapps, telles quedocs,examples,managerethost-manager.Linux :
sudo rm -rf /usr/local/tomcat/webapps/*Windows : utilisez l'Explorateur de fichiers pour supprimer manuellement tous les sous-répertoires du répertoire
CATALINA_HOME\webapps.
-
Configurer HTTPS
Utilisez HTTPS en production. Installer un certificat SSL sur le serveur Tomcat (Linux) et utilisez Nginx ou Server Load Balancer (SLB) comme proxy inverse pour gérer les requêtes HTTPS.
FAQ
Le navigateur expire ou n'est pas accessible
Vérifiez le groupe de sécurité : vérifiez si les règles entrantes du groupe de sécurité de l'instance ECS autorisent le port
8080.Vérifiez le pare-feu du système d'exploitation : vérifiez si le pare-feu du système d'exploitation (tel que
firewalldouWindows Defender Firewall) est désactivé ou configuré pour autoriser le trafic sur le port8080.-
Vérifiez l'écouteur de port : confirmez que Tomcat écoute sur le port 8080.
Linux :
ss -lntp | grep 8080Windows :
netstat -ano | findstr ":8080"
Échec du démarrage de Tomcat
Vérifiez les journaux : les principaux journaux Tomcat se trouvent dans le dossier
logsde son répertoire d'installation. Vérifiez les fichierscatalina.out(Linux) oucatalina.<date>.log(Windows) etlocalhost.<date>.log. Si les journaux contiennent l'erreurAddress already in use, cela signifie que le port est occupé par un autre programme. Pour plus d'informations, consultez la rubrique Résoudre l'inaccessibilité du port lorsqu'une instance ECS répond au ping.Erreur de chemin JDK : vérifiez si la variable d'environnement
JAVA_HOMEest correctement configurée.
Les journaux Tomcat affichent des caractères chinois illisibles
Ce problème survient généralement en raison d'une incompatibilité entre l'encodage par défaut de l'invite de commandes Windows (CMD), qui est GBK, et l'encodage de la sortie des journaux Tomcat, qui est généralement UTF-8.
Ouvrez le dossier
confdu répertoire d'installation de Tomcat, recherchez et modifiez le fichierlogging.properties.Remplacez tous les encodages
UTF-8par défaut dans le fichier parGBK.Enregistrez le fichier et redémarrez Tomcat. Vérifiez que les caractères chinois s'affichent correctement dans les journaux.