Snabbstart: Starta ditt första Java-program i Azure Container Apps

Den här artikeln visar hur du distribuerar Spring PetClinic-exempelprogrammet för att köras i Azure Container Apps. I stället för att manuellt skapa en Dockerfile och direkt använda ett containerregister kan du distribuera Java-programmet direkt från en Java-arkivfil (JAR) eller en WAR-fil (Web Application Archive).

I slutet av den här självstudien distribuerar du ett webbprogram som du kan hantera via Azure Portal.

Följande bild är en skärmbild av hur ditt program ser ut när det har distribuerats till Azure.

Skärmbild av petclinisk app.

Förutsättningar

Krav Instruktioner
Azure-konto Om du inte har något skapar du ett konto kostnadsfritt.

Du behöver behörigheten Deltagare eller Ägare för Azure-prenumerationen för att kunna fortsätta.

Mer information finns i Tilldela Azure-roller med hjälp av Azure Portal.
GitHub-konto Skaffa en gratis.
git Installera git
Azure CLI Installera Azure CLI.
Cli-tillägg för Container Apps Använd version 0.3.47 eller högre. az extension add --name containerapp --upgrade --allow-preview Använd kommandot för att installera den senaste versionen.
Java Installera Java Development Kit. Använd version 17 eller senare.
Apache Maven Ladda ned och installera Apache Maven.

Förbereda projektet

Klona Spring PetClinic-exempelprogrammet till datorn.

git clone https://github.com/spring-projects/spring-petclinic.git
git clone https://github.com/spring-petclinic/spring-framework-petclinic.git

Bygga projektet

Ändra till mappen spring-petclinic .

cd spring-petclinic

Rensa Maven-byggområdet, kompilera projektets kod och skapa en JAR-fil samtidigt som du hoppar över alla tester.

mvn clean verify

När du har kört build-kommandot genereras en fil med namnet petclinic.jar i mappen /target .

Kommentar

Om det behövs kan du ange Tomcat-versionen i Java-versionsmiljövariablerna.

Ändra till mappen spring-framework-petclinic .

cd spring-framework-petclinic

Rensa Maven-byggområdet, kompilera projektets kod och skapa en WAR-fil samtidigt som du hoppar över alla tester.

mvn clean verify

När du har kört build-kommandot genereras en fil med namnet petclinic.war i mappen /target .

Distribuera projektet

Distribuera JAR-paketet till Azure Container Apps.

Kommentar

Om det behövs kan du ange JDK-versionen i Miljövariablerna för Java-kompilering.

Nu kan du distribuera WAR-filen med az containerapp up CLI-kommandot.

az containerapp up \
  --name <CONTAINER_APP_NAME> \
  --resource-group <RESOURCE_GROUP> \
  --subscription <SUBSCRIPTION_ID>\
  --location <LOCATION> \
  --environment <ENVIRONMENT_NAME> \
  --artifact <JAR_FILE_PATH_AND_NAME> \
  --ingress external \
  --target-port 8080 \
  --query properties.configuration.ingress.fqdn

Kommentar

JDK-standardversionen är 17. Om du behöver ändra JDK-versionen för kompatibilitet med ditt program kan du använda --build-env-vars BP_JVM_VERSION=<YOUR_JDK_VERSION> argumentet för att justera versionsnumret.

Du hittar fler tillämpliga byggmiljövariabler i Java-miljövariabler.

Distribuera WAR-paketet till Azure Container Apps.

Nu kan du distribuera WAR-filen med az containerapp up CLI-kommandot.

az containerapp up \
  --name <CONTAINER_APP_NAME> \
  --resource-group <RESOURCE_GROUP> \
  --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

Kommentar

Tomcat-standardversionen är 9. Om du behöver ändra Tomcat-versionen för kompatibilitet med ditt program kan du använda --build-env-vars BP_TOMCAT_VERSION=<YOUR_TOMCAT_VERSION> argumentet för att justera versionsnumret.

I det här exemplet är Tomcat-versionen inställd på (inklusive eventuella delversioner) genom att 10 ange BP_TOMCAT_VERSION=10.* miljövariabeln.

Du hittar fler tillämpliga byggmiljövariabler i Java-miljövariabler.

Verifiera appstatus

I det här exemplet containerapp up innehåller --query properties.configuration.ingress.fqdn kommandot argumentet, som returnerar det fullständigt kvalificerade domännamnet (FQDN), även kallat appens URL.

Visa programmet genom att klistra in den här URL:en i en webbläsare. Din app bör likna följande skärmbild.

Skärmbild av petcliniskt program.

Nästa steg