Tous les produits
Search
Centre de documentation

Elastic Compute Service:Déployer un environnement web Java (Tomcat)

Dernière mise à jour :Aug 20, 2026

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

  1. Activer l'accès au réseau public : attribuez une adresse IP publique fixe ou une Elastic IP (EIP) à l'instance.

  2. 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).

  3. 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

  1. Connectez-vous à une instance ECS.

    1. 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.

    2. 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.

  2. 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/
  3. 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.

  1. 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.

  2. 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_PATH par le chemin d'accès au JDK obtenu à l'étape précédente.

  3. 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

  1. Vérifiez l'état du service.

    sudo systemctl status tomcat

    Si la valeur active (running) est renvoyée, Tomcat a démarré avec succès.

  2. 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

  1. Connectez-vous à une instance ECS.

    1. 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.

    2. 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.

  2. 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 -Force
    Nous 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.

    image

  3. Configurez les variables d'environnement.

    1. Faites un clic droit sur This PC et sélectionnez Type > Advanced system settings > Environment Variable.

    2. 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.

    3. Dans System Variables, recherchez la variable Path, sélectionnez-la et cliquez sur Modify.

    4. Dans Edit environment variable, cliquez sur New Resources, ajoutez %CATALINA_HOME%\bin et 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.

  1. Installez le service.

    Ouvrez l'invite de commandes en tant qu'administrateur, accédez au répertoire bin de Tomcat et exécutez la commande d'installation.

    service.bat install Tomcat9

    Si le message The service 'Tomcat9' has been installed. est renvoyé, l'installation a réussi.

    Tomcat9 est un nom de service personnalisé qui sera utilisé lors de la gestion du service.
  2. Démarrez le service et configurez-le pour qu'il démarre automatiquement.

    1. Faites un clic droit sur Start, puis cliquez sur Run, saisissez services.msc et appuyez sur Entrée pour ouvrir le Gestionnaire de services.

    2. 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

  1. Accédez au dossier conf du répertoire d'installation de Tomcat et ouvrez le fichier server.xml.

  2. Modifiez la configuration de Tomcat.

    • Tomcat utilise le port 8080 par défaut. Vous pouvez le modifier en changeant la valeur de l'attribut port.

      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.
      &lt;!-- A &quot;Connector&quot; 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
      --&gt;
      <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'attribut appBase.

      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">
        &lt;!-- SingleSignOn valve, share authentication between web applications
             Documentation at: /docs/config/valve.html --&gt;
        &lt;!--
        &lt;Valve className=&quot;org.apache.catalina.authenticator.SingleSignOn&quot; /&gt;
        -->

Définir les paramètres de mémoire JVM pour Tomcat

Linux

  1. Créez un fichier setenv.sh. Vous pouvez utiliser le fichier setenv.sh pour 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
  2. Ajoutez des permissions d'exécution au fichier.

    sudo chmod +x /usr/local/tomcat/bin/setenv.sh
  3. Redémarrez Tomcat pour que la configuration prenne effet.

Windows

  1. Accédez au dossier bin du répertoire d'installation de Tomcat et ouvrez le fichier catalina.bat.

  2. Ajoutez ou modifiez les paramètres JVM.

    Au début du fichier (généralement après setlocal et avant call "%CATALINA_HOME%\bin\setenv.bat"), ajoutez ou modifiez JAVA_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_OPTS existe déjà, ajoutez les paramètres à la suite (notez qu'un espace est requis entre les paramètres).
  3. 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é.

  1. 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 que docs, examples, manager et host-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.

  2. 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 firewalld ou Windows Defender Firewall) est désactivé ou configuré pour autoriser le trafic sur le port 8080.

  • Vérifiez l'écouteur de port : confirmez que Tomcat écoute sur le port 8080.

    • Linux : ss -lntp | grep 8080

    • Windows : netstat -ano | findstr ":8080"

Échec du démarrage de Tomcat

  1. Vérifiez les journaux : les principaux journaux Tomcat se trouvent dans le dossier logs de son répertoire d'installation. Vérifiez les fichiers catalina.out (Linux) ou catalina.<date>.log (Windows) et localhost.<date>.log. Si les journaux contiennent l'erreur Address 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.

  2. Erreur de chemin JDK : vérifiez si la variable d'environnement JAVA_HOME est 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.

  1. Ouvrez le dossier conf du répertoire d'installation de Tomcat, recherchez et modifiez le fichier logging.properties.

  2. Remplacez tous les encodages UTF-8 par défaut dans le fichier par GBK.

  3. Enregistrez le fichier et redémarrez Tomcat. Vérifiez que les caractères chinois s'affichent correctement dans les journaux.