Snabbstart: Distribuera en artefaktfil till Azure Container Apps (förhandsversion)
I den här snabbstarten lär du dig att distribuera en containerapp från en fördefinierad artefaktfil. Exemplet i den här artikeln distribuerar ett Java-program med hjälp av en JAR-fil, som innehåller en Java-specifik manifestfil. Ditt jobb är att skapa en webb-API-tjänst för serverdelen som returnerar en statisk samling musikalbum. När du har slutfört den här snabbstarten kan du fortsätta till Kommunikation mellan mikrotjänster för att lära dig hur du distribuerar ett klientdelsprogram som anropar API:et.
Följande skärmbild visar utdata från den album-API-tjänst som du distribuerar.
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. |
Java | Installera JDK, rekommenderar 17 eller senare |
Maven | Installera Maven. |
Ställ in
Om du vill logga in på Azure från CLI kör du följande kommando och följer anvisningarna för att slutföra autentiseringsprocessen.
az login
Kör uppgraderingskommandot för att säkerställa att du kör den senaste versionen av CLI.
az upgrade
Installera eller uppdatera sedan Azure Container Apps-tillägget för CLI.
Om du får fel om saknade parametrar när du kör az containerapp
kommandon i Azure CLI eller cmdletar från modulen Az.App
i Azure PowerShell kontrollerar du att den senaste versionen av Azure Container Apps-tillägget är installerad.
az extension add --name containerapp --upgrade
Kommentar
Från och med maj 2024 aktiverar Azure CLI-tillägg inte längre förhandsversionsfunktioner som standard. Om du vill komma åt förhandsversionsfunktioner för Container Apps installerar du containerapptillägget med --allow-preview true
.
az extension add --name containerapp --upgrade --allow-preview true
Nu när det aktuella tillägget eller modulen har installerats registrerar du Microsoft.App
namnrymderna och Microsoft.OperationalInsights
.
az provider register --namespace Microsoft.App
az provider register --namespace Microsoft.OperationalInsights
Skapa miljövariabler
Nu när azure CLI-installationen är klar kan du definiera de miljövariabler som används i hela den här artikeln.
Definiera följande variabler i bash-gränssnittet.
RESOURCE_GROUP="album-containerapps"
LOCATION="canadacentral"
ENVIRONMENT="env-album-containerapps"
API_NAME="album-api"
SUBSCRIPTION=<YOUR_SUBSCRIPTION_ID>
Om det behövs kan du fråga efter ditt prenumerations-ID.
az account list --output table
Förbereda GitHub-lagringsplatsen
Börja med att klona exempellagringsplatsen.
Använd följande git-kommando för att klona exempelappen till mappen code-to-cloud :
git clone https://github.com/azure-samples/containerapps-albumapi-java code-to-cloud
cd code-to-cloud
Skapa en JAR-fil
Kommentar
Java-exemplet stöder endast en Maven-version, vilket resulterar i en körbar JAR-fil. Versionen använder standardinställningarna eftersom det inte går att skicka in miljövariabler.
Skapa projektet med Maven.
mvn clean package -DskipTests
Köra projektet lokalt
java -jar target\containerapps-albumapi-java-0.0.1-SNAPSHOT.jar
Kontrollera att programmet körs genom att öppna en webbläsare och gå till http://localhost:8080/albums
. Sidan returnerar en lista över JSON-objekten.
Distribuera artefakten
Skapa och distribuera din första containerapp från din lokala JAR-fil med containerapp up
kommandot .
Det här kommandot:
- Skapar resursgruppen
- Skapar ett Azure Container Registry
- Skapar containeravbildningen och push-överför den till registret
- Skapar Container Apps-miljön med en Log Analytics-arbetsyta
- Skapar och distribuerar containerappen med hjälp av en offentlig containeravbildning
Kommandot up
använder Docker-filen i roten på lagringsplatsen för att skapa containeravbildningen. Instruktionen EXPOSE
i Docker-filen definierar målporten. En Docker-fil krävs dock inte för att skapa en containerapp.
Kommentar
Obs! När du använder containerapp up
i kombination med en Docker-mindre kodbas använder du parametern --location
så att programmet körs på en annan plats än USA, östra.
az containerapp up \
--name $API_NAME \
--resource-group $RESOURCE_GROUP \
--location $LOCATION \
--environment $ENVIRONMENT \
--artifact ./target/containerapps-albumapi-java-0.0.1-SNAPSHOT.jar \
--ingress external \
--target-port 8080 \
--subscription $SUBSCRIPTION
Verifiera distributionen
Kopiera FQDN till en webbläsare. Från webbläsaren går du till /albums
slutpunkten för det fullständiga domännamnet.
Distribuera en WAR-fil
Du kan också distribuera containerappen från en WAR-fil.
Rensa resurser
Om du inte kommer att fortsätta att använda det här programmet kan du ta bort Azure Container Apps-instansen och alla associerade tjänster genom att ta bort resursgruppen.
Följ de här stegen för att ta bort de resurser som du skapade:
az group delete \
--resource-group $RESOURCE_GROUP
Dricks
Har du problem? Meddela oss på GitHub genom att öppna ett problem i Azure Container Apps-lagringsplatsen.