Rövid útmutató: Alkalmazások létrehozása és üzembe helyezése az Azure Spring Appsben

Feljegyzés

Az Azure Spring Apps az Azure Spring Cloud szolgáltatás új neve. Bár a szolgáltatásnak új neve van, bizonyos helyeken a régi nevet fogja látni egy darabig, miközben az eszközök, például képernyőképek, videók és diagramok frissítésével dolgozunk.

Ez a cikk a következőre vonatkozik: ✔️ Basic/Standard ❌ Enterprise

Ez a rövid útmutató bemutatja, hogyan hozhat létre és helyezhet üzembe Spring-alkalmazásokat az Azure Spring Appsben az Azure CLI használatával.

Előfeltételek

A mintaalkalmazás letöltése

A mintaalkalmazás letöltéséhez kövesse az alábbi lépéseket. Ha az Azure Cloud Shellt használja, váltson egy helyi parancssorra.

  1. Hozzon létre egy új mappát, és klónozza a mintaalkalmazás-adattárat.

    mkdir source-code
    
    cd source-code
    
    git clone https://github.com/Azure-Samples/azure-spring-apps-samples
    
  2. Lépjen az adattár könyvtárára.

    cd azure-spring-apps-samples
    

A PlanetWeatherProvider üzembe helyezése

A PlanetWeatherProvider projekt üzembe helyezéséhez kövesse az alábbi lépéseket.

  1. Hozzon létre egy alkalmazást a PlanetWeatherProvider projekthez az Azure Spring Apps-példányban.

    az spring app create --name planet-weather-provider --runtime-version NetCore_31
    

    Az automatikus szolgáltatásregisztráció engedélyezéséhez ugyanazt a nevet adta az alkalmazásnak, mint a projekt appsettings.json fájljának értékespring.application.name:

    "spring": {
      "application": {
        "name": "planet-weather-provider"
      }
    }
    

    A parancs futtatása több percet is igénybe vehet.

  2. Módosítsa a könyvtárat a PlanetWeatherProvider projektmappára.

    cd steeltoe-sample/src/planet-weather-provider
    
  3. Hozza létre az üzembe helyezendő bináris fájlokat és .zip fájlt.

    dotnet publish -c release -o ./publish
    

    Tipp.

    A projektfájl a következő XML-t tartalmazza a bináris fájlok .zip fájlba való becsomagolásához, miután a ./publish mappába írta őket:

    <Target Name="Publish-Zip" AfterTargets="Publish">
      <ZipDirectory SourceDirectory="$(PublishDir)" DestinationFile="$(MSBuildProjectDirectory)/publish-deploy-planet.zip" Overwrite="true" />
    </Target>
    
  4. Telepítse a projektet az Azure-ban.

    A következő parancs futtatása előtt győződjön meg arról, hogy a parancssor a projektmappában van.

    az spring app deploy \
        --name planet-weather-provider \
        --runtime-version NetCore_31 \
        --main-entry Microsoft.Azure.SpringCloud.Sample.PlanetWeatherProvider.dll \
        --artifact-path ./publish-deploy-planet.zip
    

    A --main-entry beállítás megadja a relatív elérési utat a .zip fájl gyökérmappájától az alkalmazás belépési pontját tartalmazó .dll fájlig. Miután a szolgáltatás feltöltötte a .zip fájlt, kinyeri az összes fájlt és mappát, majd megpróbálja végrehajtani a belépési pontot a megadott .dll fájlban.

    A parancs futtatása több percet is igénybe vehet.

A SolarSystemWeather üzembe helyezése

A SolarSystemWeather projekt üzembe helyezéséhez kövesse az alábbi lépéseket.

  1. Hozzon létre egy másik alkalmazást az Azure Spring Apps-példányban a projekthez.

    az spring app create --name solar-system-weather --runtime-version NetCore_31
    

    solar-system-weathera projekt appsettings.json fájljában SolarSystemWeathermegadott név.

    A parancs futtatása több percet is igénybe vehet.

  2. Módosítsa a könyvtárat a projektre SolarSystemWeather .

    cd ../solar-system-weather
    
  3. Hozza létre az üzembe helyezendő bináris fájlokat és .zip fájlt.

    dotnet publish -c release -o ./publish
    
  4. Telepítse a projektet az Azure-ban.

    az spring app deploy \
        --name solar-system-weather \
        --runtime-version NetCore_31 \
        --main-entry Microsoft.Azure.SpringCloud.Sample.SolarSystemWeather.dll \
        --artifact-path ./publish-deploy-solar.zip
    

    A parancs futtatása több percet is igénybe vehet.

Nyilvános végpont hozzárendelése

Az alkalmazás tesztelése előtt kérjen nyilvános végpontot az alkalmazásnak küldött HTTP GET-kéréshez solar-system-weather .

  1. Futtassa a következő parancsot a végpont hozzárendeléséhez.

    az spring app update --name solar-system-weather --assign-endpoint true
    
  2. Futtassa a következő parancsot a végpont URL-címének lekéréséhez.

    Windows:

    az spring app show --name solar-system-weather --output table
    

    Linux:

    az spring app show --name solar-system-weather | grep url
    

Az alkalmazás tesztelése

Az alkalmazás teszteléséhez küldjön get kérést az solar-system-weather alkalmazásnak. A böngészőben keresse meg a nyilvános URL-címet /weatherforecast hozzáfűzve. Például: https://servicename-solar-system-weather.azuremicroservices.io/weatherforecast

A kimenet JSON:

[{"Key":"Mercury","Value":"very warm"},{"Key":"Venus","Value":"quite unpleasant"},{"Key":"Mars","Value":"very cool"},{"Key":"Saturn","Value":"a little bit sandy"}]

Ez a válasz azt mutatja, hogy mindkét Spring-alkalmazás működik. Az SolarSystemWeather alkalmazás visszaadja az alkalmazásból PlanetWeatherProvider lekért adatokat.

Ez a cikk bemutatja, hogyan hozhat létre és helyezhet üzembe Spring-alkalmazásokat az Azure Spring Appsben. Használhatja az Azure CLI-t, a Maven beépülő modult vagy az Intellij-t. Ez a cikk az egyes alternatívákat ismerteti.

Előfeltételek

A Spring-alkalmazások helyi létrehozása

Az alábbi parancsokkal klónozhatja a mintaadattárat, keresse meg a mintamappát, majd hozza létre a projektet.

git clone https://github.com/azure-samples/spring-petclinic-microservices
cd spring-petclinic-microservices
mvn clean package -DskipTests -Denv=cloud

A projekt összeállítása 5–10 percet vesz igénybe. A projekt lefordításakor minden egyes szolgáltatáshoz külön JAR-fájlokat kell készítenie a saját mappájukban.

Alkalmazások létrehozása és üzembe helyezése az Azure Spring Appsben

Az alábbi lépésekkel hozhat létre és helyezhet üzembe alkalmazásokat az Azure Spring Appsben a parancssori felület használatával.

  1. Ha az előző rövid útmutatókban nem futtatta a következő parancsokat, futtassa őket most az alapértelmezett parancssori felület beállításához.

    az configure --defaults group=<resource-group-name> spring=<service-name>
    
  2. Hozza létre a két alapvető Spring-alkalmazást a PetClinichez: api-gateway és customers-service.

    az spring app create \
        --name api-gateway \
        --runtime-version Java_17 \
        --instance-count 1 \
        --memory 2Gi \
        --assign-endpoint
    az spring app create \
        --name customers-service \
        --runtime-version Java_17 \
        --instance-count 1 \
        --memory 2Gi
    
  3. Telepítse az előző lépésben létrehozott JAR-fájlokat.

    az spring app deploy \
        --name api-gateway \
        --artifact-path spring-petclinic-api-gateway/target/api-gateway-3.0.1.jar \
        --jvm-options="-Xms2048m -Xmx2048m"
    az spring app deploy \
        --name customers-service \
        --artifact-path spring-petclinic-customers-service/target/customers-service-3.0.1.jar \
        --jvm-options="-Xms2048m -Xmx2048m"
    
  4. Az alkalmazás állapotának lekérdezése az üzembe helyezés után az alábbi paranccsal.

    az spring app list --output table
    

    Ez a parancs az alábbi példához hasonló kimenetet hoz létre:

    Name               Location    ResourceGroup    Production Deployment    Public Url                                           Provisioning Status    CPU    Memory    Running Instance    Registered Instance    Persistent Storage
    -----------------  ----------  ---------------  -----------------------  ---------------------------------------------------  ---------------------  -----  --------  ------------------  ---------------------  --------------------
    api-gateway        eastus      xxxxxx-sp         default                  https://<service name>-api-gateway.azuremicroservices.io   Succeeded              1      2         1/1                 1/1                    -
    customers-service  eastus      <service name>         default                                                                       Succeeded              1      2         1/1                 1/1                    -
    

A szolgáltatások ellenőrzése

Hozzáférés api-gateway és customers-service böngészőből a korábban megjelenített nyilvános URL-címmel , a következő formátumban https://<service name>-api-gateway.azuremicroservices.io: .

Képernyőkép a Tulajdonosok lapot megjelenítő PetClinic mintaalkalmazásról.

Tipp.

Az üzembe helyezésekkel kapcsolatos problémák megoldásához az alábbi paranccsal valós időben streamelheti a naplókat, amikor az alkalmazás fut az spring app logs --name <app name> --follow.

További alkalmazások üzembe helyezése

Ahhoz, hogy a PetClinic alkalmazás minden olyan funkcióval működjön, mint a Rendszergazda Kiszolgáló, a Látogatások és az Állatorvosok, helyezze üzembe a többi alkalmazást a következő parancsokkal:

az spring app create \
    --name admin-server \
    --runtime-version Java_17 \
    --instance-count 1 \
    --memory 2Gi \
    --assign-endpoint
az spring app create \
    --name vets-service \
    --runtime-version Java_17 \
    --instance-count 1 \
    --memory 2Gi
az spring app create \
    --name visits-service \
    --runtime-version Java_17 \
    --instance-count 1 \
    --memory 2Gi
az spring app deploy \
    --name admin-server \
    --runtime-version Java_17 \
    --artifact-path spring-petclinic-admin-server/target/admin-server-3.0.1.jar \
    --jvm-options="-Xms1536m -Xmx1536m"
az spring app deploy \
    --name vets-service \
    --runtime-version Java_17 \
    --artifact-path spring-petclinic-vets-service/target/vets-service-3.0.1.jar \
    --jvm-options="-Xms1536m -Xmx1536m"
az spring app deploy \
    --name visits-service \
    --runtime-version Java_17 \
    --artifact-path spring-petclinic-visits-service/target/visits-service-3.0.1.jar \
    --jvm-options="-Xms1536m -Xmx1536m"

Az erőforrások eltávolítása

Ha további rövid útmutatókkal és oktatóanyagokkal szeretne dolgozni, érdemes lehet ezeket az erőforrásokat a helyén hagyni. Ha már nincs rá szükség, törölje az erőforráscsoportot, amely törli az erőforráscsoport erőforrásait. Ha törölni szeretné az erőforráscsoportot az Azure CLI használatával, használja a következő parancsokat:

echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."

Következő lépések