Tworzenie prostej statycznej strony www w Azure

wpis w: Azure, migawka, PaaS | 0

Byłem ostatnio poproszony o przygotowanie małej prezentacji o historii informatyki.
Wybrałem subiektywnie kilka tematów: m.in. program Apollo, początki inżynierii oprogramowania i walkę człowieka z maszynami grającymi w szachy i Go. Czy od czasu zwycięstwa nad Gari Kasparovem (lata 90-te XX wieku) przez Deep Blue nic się nie zmieniło?

Wykorzystałem poniższą stronę:

https://medium.freecodecamp.org/simple-chess-ai-step-by-step-1d55a9266977

Podane w artykule repozytorium kodu w JavaScript przekopiowałem na własne konto

https://github.com/djkormo/simple-chess-ai

Postanowiłem na przykładzie chmury Azure pokazać krótką demonstrację.

Ile linii kodu jest potrzebne na postawienie własnej strony www, która zagra z nami w szachy i która ma szanse nas pokonać.

Wszystko to można zrobić z poziomu Portalu, postanowiłem zmierzyć się z problemem za pomocą Azure Cli 2.0.

1.Wersja PaaS

#logowanie
az login
# tworzenie RG
az group create -l eastus -n chestai
# service plan dla aplikacji PaaS
az appservice plan create --name myAppServicePlanChestAI --resource-group chestai --sku FREE 
# aplikacja www w ramach tego service planu
az webapp create --resource-group chestai --plan myAppServicePlanChestAI --name myWebAppChessAI 
# zrodlo aplikacji -> github.com
az webapp deployment source config --name myWebAppChessAI --resource-group chestai --repo-url https://github.com/djkormo/simple-chess-ai --branch master --manual-integration

# usuniecie wszelkich zasobow w ramach RG
az group delete -n chestai

Ostatnią nowością jest możliwość postawienia statycznej strony www z poziomu konta magazynowego.

2. Statyczna strona www w wersji preview na koncie storage.

Od niedawna Azure pozazdrościł jednej z funkcjonalność AWS, czyli możliwość postawienia statycznej strony www na usłudze S3. Aktualnie znajduje się ona w wersji zapoznawczej.
Trochę późno, ale nie ma co narzekać, jak widać konkurencja ma tu swoje dobre strony.

Oficjalna dokumentacja producenta

https://azure.microsoft.com/en-us/blog/azure-storage-static-web-hosting-public-preview/

https://github.com/Azure/azure-cli-extensions/tree/master/src/storage-preview

 

# postawienie statycznej strony www

#logowanie
az login

# dodanie modulu obslugującego wersje zapoznawczą 
az extension add --name storage-preview


# tworzenie RG
az group create -l eastus -n staticwebsite

az storage account create -n accountforstaticwebsite -g staticwebsite -l eastus --sku Standard_LRS --kind StorageV2 --hierarchical-namespace
###The behavior of this command has been altered by the following extension: storage-preview

git clone https://github.com/djkormo/simple-chess-ai.git

###Cloning into 'simple-chess-ai'...
###remote: Counting objects: 59, done.
###remote: Compressing objects: 100% (6/6), done.
###remote: Total 59 (delta 1), reused 0 (delta 0), pack-reused 53
###Unpacking objects: 100% (59/59), done.

az storage blob service-properties update --account-name accountforstaticwebsite --static-website --404-document error.html --index-document index.html

az storage container list --account-name accountforstaticwebsite -o table
#Name Lease Status Last Modified
#------ -------------- -------------------------
#$web unlocked 2018-07-02T20:31:31+00:00

# TODO tu wykorzystalem Visual Studio Code i dodatek Azure Storage w wersji zapoznawczej.

# nazwa strony www <account-name>.<zone-name>.web.core.windows.net.
# usuniecie wszelkich zasobow w ramach RG
az group delete -n staticwebsite

Nie ukrywam , że bardziej podoba mi się wersja PaaS, ale z niecierpliwością czekam na dalszy rozwój budowy statycznych stron www na bazie kont magazynowych. To czego mi najbardziej brakuje to proste podłączenie z repozytorium kodu, w którym umieścimy zawartość strony. Dodatkowo zauważyłem słabszą wydajność nowego rozwiązania, a wersja PaaS jest uruchomiona na darmowym planie.

Strony do porównania

1.PaaS

https://mywebappchessai.azurewebsites.net/

2. Statyczne www

https://accountforstaticwebsite.z13.web.core.windows.net/

 

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.