Dzisiejszy wpis chciałbym poświęcić na pokazanie jak proste jest wdrożenie aplikacji do chmury Microsoft Azure. Oczywiście przykład zostanie oparty o mój projekt na Daj Się Poznać, czyli todo.team.
Logowanie do Microsoft Azure
Moją przygodę rozpocząłem od odwiedzin portalu Azure. Na pierwszy rzut oka panel wydaje się być prosty, jednak po krótkiej analizie bocznego menu okazuję się, że chmura Azure to nie taki łatwy kawałek chleba – przynajmniej dla osoby, która styczność z nią ma po raz pierwszy.
Tworzenie nowej aplikacji
Postanowiłem umieścić w chmurze całą aplikację, wraz z bazą danych Microsoft SQL.
Wybór usługi
Z menu po lewej wybrałem „App Services” (1), w nowo otwartym panelu kliknąłem na „Dodaj” (2), a następnie z dostępnych możliwości wybrałem „Aplikacja sieci Web + baza” (3).
Nowe okno, które się pojawiło poinformowało mnie wskazanej usłudze. Ogółem rzecz biorąc, spełnia moje najskrytsze – na chwilę obecną – wymagania.
- Najszybsze tworzenie aplikacji działających w chmurze,
- Szybkie udostępnianie i wdrażanie,
- Bezpieczna platforma z automatycznym skalowaniem,
- Wygoda dla deweloperów korzystających z programu Visual Studio,
- Otwartość i elastyczność dostępne dla każdego,
- Monitorowanie, alerty i automatyczne skalowanie.
Wstępna konfiguracja
Konfigurację rozpocząłem od nadania nazwy mojej aplikacji oraz wyboru subskrypcji. Następnie przypisałem ją do nowo utworzonej grupy zasobów.
Następnie musiałem określić moją lokalizację.
Warstwa cenowa
Ważnym kryterium jest warstwa cenowa. Zakładałem, że potrzebuję możliwości podpięcia własnej, niestandardowej domeny. Dostęp do podstawowych funkcji oraz 10GB magazynu danych na start wystarczą również. Adekwatna do potrzeb stała się więc podstawowa warstwa cenowa B1.
Baza danych
Konfiguracja bazy odbyła się bezproblemowo.
W tym przypadku również należało określić próg cenowy, adekwatny do moich potrzeb. Postanowiłem skorzystać z podstawowej opcji.
Kiedy wszystkie pola miałem uzupełnione, nastąpiło tworzenie aplikacji.
Po krótkim czasie – gotowe!
Teraz dopiero zaczęło się najlepsze! Czas powołać do życia w globalnej sieci todo.team.
Dostęp przez FTP
Dodam na początku, że Azure wygenerowało mi specjalny dostęp przez FTP. Dzięki temu mogłem zajrzeć do magazynu mojej aplikacji.
Wdrażanie aplikacji
Deploy przez GitHub
Mógłbym w zasadzie przygotować skompilowane pliki mojej aplikacji i wysłać je na serwer. Nie w tym jednak rzecz. Chciałbym dzisiaj pokazać, jak wykonałem wdrożenie za pomocą repozytorium na GitHub. Można to zrobić, wykorzystując jeszcze inne magazyny repozytoriów, ba – nawet przesyłając pliki na Dropboxa! Niestety, na dzień dzisiejszy nie ma jeszcze możliwości wdrożenia emacsem przez sendmail. Szkoda.
Nie mniej jednak – zaczynam kochać Azure :-)
Nie chcąc tracić czasu, przystąpiłem do konfiguracji źródła kodu. Na początku musiałem autoryzować dostęp do GitHuba.
Portal Azure połączył się z moim kontem, po czym mogłem wskazać repozytorium i jego gałąź, którą ma śledzić.
Po zatwierdzeniu nic więcej nie musiałem robić. Operacja trwała i trwała…
Ooops! A co to?
Niestety kompilacja nie powiodła się.
Naprawa błędów
Na szczęście jest dziennik błędów. Wystarczy kliknąć w powyższe okienko.
Pierwszy błąd był mi już znany. Chodziło o konflikt różnych wersji zależności.
Drugi odnosił się do plików, których nie widział kompilator. Chyba za bardzo bawiłem się plikiem .gitignore.
Po wyeliminowaniu błędów otrzymałem informację, że wdrożenie zostało ukończone pomyślnie.
Efekt jest następujący. Moja aplikacja jest już dostępna w sieci.
Podsumowanie
Poszło gładko. Myślę, że Azure spełnia swoją rolę perfekcyjnie, jeśli mamy w zasobach jakiś budżet przeznaczony na utrzymywanie aplikacji. Za dość rozsądne pieniądze otrzymujemy pewność i stabilność działania. Czego może chcieć więcej programista?
Jak na razie aplikacja ma wyłączoną rejestrację. Kończę wdrażać pewne poprawki i za jakiś czas odezwę się do Was z prośbą o testy.
Kolejny wpis na blogu dotyczył będzie po raz kolejny chmury Microsoft Azure. Pokażę Ci możliwość podłączenia własnej, niestandardowej domeny pod swoje konto.
Tagi: Azure • Daj Się Poznać 2017 • deploy • Microsoft • sql • Wdrożenie • WEB App