Freigeben über


Schnellstart: Starten Ihrer ersten Java-Anwendung in Azure-Container-Apps mit einer WAR- oder JAR-Datei

In diesem Artikel erfahren Sie, wie Sie die Spring PetClinic-Beispielanwendung mithilfe einer WAR-Datei (Web Application Archive) oder einer JAR-Datei (Java Archive) in Azure Container Apps bereitstellen.

Es stehen mehrere Optionen für die Bereitstellung von Java-Anwendungen zur Verfügung, einschließlich der folgenden Optionen:

  • Bereitstellung aus einem lokalen Dateisystem oder aus einem Code-Repository.
  • Bereitstellung mit Maven oder einer IDE.
  • Bereitstellung mithilfe einer WAR-Datei, einer JAR-Datei oder direkt aus dem Quellcode.

Am Ende dieses Lernprogramms stellen Sie eine Webanwendung bereit, die Sie über das Azure-Portal verwalten können. Der folgende Screenshot zeigt die Startseite der PetClinic-Anwendung, die für Azure-Container-Apps bereitgestellt wird:

Screenshot der Startseite der PetClinic-App.

Voraussetzungen

Erstellen des Projekts

Erstellen Sie das Projekt mithilfe der folgenden Schritte:

  1. Klonen Sie das Java Samples-Repository für Azure-Container-Apps mithilfe des folgenden Befehls:

    git clone https://github.com/Azure-Samples/azure-container-apps-java-samples.git
    
  1. Klonen Sie das Spring PetClinic Sample Application-Repository mithilfe des folgenden Befehls:

    git clone https://github.com/spring-petclinic/spring-framework-petclinic.git
    
  1. Navigieren Sie mit dem folgenden Befehl zum spring-petclinic-Ordner:

    cd azure-container-apps-java-samples/spring-petclinic/spring-petclinic/
    
  2. Initialisieren und aktualisieren Sie das Spring PetClinic Sample Application-Repository auf die neueste Version, indem Sie den folgenden Befehl verwenden:

    git submodule update --init --recursive
    
  3. Verwenden Sie den folgenden Befehl, um den Maven-Buildbereich zu bereinigen, den Code des Projekts zu kompilieren und eine JAR-Datei zu erstellen, wobei alle Tests während dieser Prozesse übersprungen werden:

    mvn clean verify
    

Sie verfügen jetzt über eine /target/petclinic.jar-Datei .

  1. Navigieren Sie mit dem folgenden Befehl zum Spring-framework-petclinic-Ordner :

    cd spring-framework-petclinic
    
  2. Verwenden Sie den folgenden Befehl, um den Maven-Buildbereich zu bereinigen, den Code des Projekts zu kompilieren und eine JAR-Datei zu erstellen, wobei alle Tests während dieser Prozesse übersprungen werden:

    mvn clean verify
    

Sie haben jetzt eine Datei "/target/petclinic.war".

Bereitstellen des Projekts

Stellen Sie das JAR-Paket mithilfe des folgenden Befehls in Azure Container-Apps bereit:

Hinweis

Die JDK-Standardversion ist 17. Sie haben die Möglichkeit, die Version mithilfe von Umgebungsvariablen anzugeben. Verwenden Sie das --build-env-vars BP_JVM_VERSION=<your-JDK-version> Argument, um die JDK-Version zur Kompatibilität mit Ihrer Anwendung zu ändern. Weitere Informationen finden Sie unter Build-Umgebungsvariablen für Java in Azure Container Apps (Vorschau).

az containerapp up \
    --resource-group <resource-group> \
    --name <container-app-name> \
    --subscription <subscription-ID>\
    --location <location> \
    --environment <environment-name> \
    --artifact <JAR-file-path-and-name> \
    --ingress external \
    --target-port 8080 \
    --query properties.configuration.ingress.fqdn

Stellen Sie die WAR-Datei mithilfe des folgenden Befehls in Azure-Container-Apps bereit:

Hinweis

Die Standardversion von Tomcat ist 9. Verwenden Sie das --build-env-vars BP_TOMCAT_VERSION=<your-Tomcat-version> Argument, um die Version zur Kompatibilität mit Ihrer Anwendung zu ändern. In diesem Beispiel wird die Tomcat-Version auf 10 festgelegt, einschließlich aller Nebenversionen, indem BP_TOMCAT_VERSION=10.* festgelegt wird. Weitere Informationen finden Sie unter Build-Umgebungsvariablen für Java in Azure Container Apps (Vorschau).

az containerapp up \
    --resource-group <resource-group> \
    --name <container-app-name> \
    --subscription <subscription>\
    --location <location> \
    --environment <environment-name> \
    --artifact <WAR-file-path-and-name> \
    --build-env-vars BP_TOMCAT_VERSION=10.* \
    --ingress external \
    --target-port 8080 \
    --query properties.configuration.ingress.fqdn

Überprüfen des App-Status

In diesem Beispiel enthält der Befehl containerapp up das Argument --query properties.configuration.ingress.fqdn, das den vollqualifizierten Domänennamen (FQDN), auch bekannt als die URL der App, zurückgibt.

Zeigen Sie die Anwendung an, indem Sie diese URL in einen Browser einfügen.

Bereinigen von Ressourcen

Wenn Sie beabsichtigen, mit weiteren Schnellstarts und Lernprogrammen fortzufahren, sollten Sie diese Ressourcen beibehalten. Wenn Sie die Ressourcen nicht mehr benötigen, können Sie sie entfernen, um Azure-Gebühren zu vermeiden, indem Sie den folgenden Befehl verwenden:

az group delete --name <resource-group>