Cvičení – nasazení aplikace Spring Boot Redis do Azure
Když teď všechno běží místně, můžete aplikaci nasadit do cloudu a otestovat její chování v produkčním prostředí.
Vytvoření instance služby Azure App Service
Vytvořte instanci služby Azure App Service pro hostování vaší aplikace. Pomocí následujícího kódu Azure CLI vytvořte základní plán služby App Service, který používá Linux, a pak do tohoto plánu přidejte instanci Javy ve službě App Service.
Pokud chcete místo Javy 8 používat Javu 11 nebo Javu 17, použijte místo "JAVA|8-jre8"
jako modul runtime webové aplikace "JAVA|<version>-java<version>"
.
az appservice plan create \
--resource-group $AZ_RESOURCE_GROUP \
--name $AZ_REDIS_NAME-webapp-plan \
--is-linux \
--sku B1
az webapp create \
--resource-group $AZ_RESOURCE_GROUP \
--name $AZ_REDIS_NAME-webapp \
--runtime "JAVA|8-jre8" \
--plan $AZ_REDIS_NAME-webapp-plan
Poznámka
Předchozí kód znovu použije proměnnou $AZ_REDIS_NAME
k pojmenování plánu služby App Service a instance služby App Service, ale můžete použít různé názvy. Název instance služby App Service je součástí adresy URL, která musí být jedinečná v rámci Azure.
Během dokončení tohoto nasazení můžete provést další krok.
Nasazení aplikace Spring Boot do služby Azure App Service
Do souboru pom.xml projektu přidejte do části
<plugins>
následující nový modul plug-in:<plugin> <groupId>com.microsoft.azure</groupId> <artifactId>azure-webapp-maven-plugin</artifactId> <version>2.11.0</version> <configuration> <schemaVersion>V2</schemaVersion> <resourceGroup>${env.AZ_RESOURCE_GROUP}</resourceGroup> <appName>${env.AZ_REDIS_NAME}-webapp</appName> <deployment> <resources> <resource> <directory>${project.basedir}/target</directory> <includes> <include>*.jar</include> </includes> </resource> </resources> </deployment> </configuration> </plugin>
Poznámka
Předchozí konfigurace používá proměnné prostředí, které jste nakonfigurovali dříve. Aby tato konfigurace fungovala, ujistěte se, že jsou správně nastavené
$AZ_RESOURCE_GROUP
a$AZ_REDIS_NAME
proměnné.Po dokončení nasazení služby App Service spusťte následující příkaz, který zabalí vaši aplikaci a nasadí ji do Azure:
./mvnw package azure-webapp:deploy
Po úspěšném dokončení nasazení se vrátí následující řádek:
Successfully deployed the artifact to https://<redisName>-webapp.azurewebsites.net
Poznamenejte si adresu URL spuštěné aplikace, jak je znázorněno v předchozím výstupu, abyste ji mohli použít v další části.
Testování aplikace v Azure
Pomocí adresy URL aplikace spusťte stejné příkazy url klienta (cURL) v cloudu, který jste použili na místním serveru.
Pokud chcete přidat datovou položku, spusťte následující příkaz:
curl -d '{"description":"another description", "details":"some more details"}' -H "Content-Type: application/json" -X POST https://$AZ_REDIS_NAME-webapp.azurewebsites.net
Pokud chcete načíst data, spusťte:
curl https://$AZ_REDIS_NAME-webapp.azurewebsites.net
Pokud chcete zvýšit relaci, spusťte několikrát následující příkaz:
curl -b cookie.txt -c cookie.txt https://$AZ_REDIS_NAME-webapp.azurewebsites.net/session
Místní server a cloudová služba používají stejnou instanci Redis, takže jsou clusterované. Data, která zapíšete v jedné instanci, jsou k dispozici v druhé instanci. Cloudová služba se může škálovat přidáním dalších uzlů, které používají stejnou instanci Redis k ukládání obchodních dat i dat relací.