Szybki start: kompilowanie i wdrażanie z lokalnego kodu źródłowego do usługi Azure Container Apps
W tym artykule pokazano, jak utworzyć i wdrożyć mikrousługę w usłudze Azure Container Apps z lokalnego kodu źródłowego przy użyciu wybranego języka programowania. W tym przewodniku Szybki start utworzysz usługę internetowego interfejsu API zaplecza, która zwraca statyczną kolekcję albumów muzycznych.
Uwaga
Ta przykładowa aplikacja jest dostępna w dwóch wersjach. Jedna wersja, w której źródło zawiera plik Dockerfile. Druga wersja nie ma pliku Dockerfile. Wybierz wersję, która najlepiej odzwierciedla kod źródłowy. Jeśli dopiero zaczynasz korzystać z kontenerów, wybierz opcję Brak pliku Dockerfile u góry.
Poniższy zrzut ekranu przedstawia dane wyjściowe wdrożonej usługi interfejsu API albumu.
Wymagania wstępne
Do ukończenia tego projektu potrzebne są następujące elementy:
Wymaganie | Instrukcje |
---|---|
Konto platformy Azure | Jeśli go nie masz, utwórz bezpłatne konto. Aby kontynuować, musisz mieć uprawnienie Współautor lub Właściciel w subskrypcji platformy Azure. Aby uzyskać szczegółowe informacje, zobacz Przypisywanie ról platformy Azure przy użyciu witryny Azure Portal . |
Interfejs wiersza polecenia platformy Azure | Zainstaluj interfejs wiersza polecenia platformy Azure. |
Ustawienia
Aby zalogować się do platformy Azure z poziomu interfejsu wiersza polecenia, uruchom następujące polecenie i postępuj zgodnie z monitami, aby ukończyć proces uwierzytelniania.
az login
Aby upewnić się, że używasz najnowszej wersji interfejsu wiersza polecenia, uruchom polecenie uaktualniania.
az upgrade
Następnie zainstaluj lub zaktualizuj rozszerzenie usługi Azure Container Apps dla interfejsu wiersza polecenia.
Jeśli podczas uruchamiania az containerapp
poleceń w interfejsie wiersza polecenia platformy Azure lub poleceniach cmdlet z modułu Az.App
w programie Azure PowerShell wystąpią błędy dotyczące brakujących parametrów, upewnij się, że masz zainstalowaną najnowszą wersję rozszerzenia Azure Container Apps.
az extension add --name containerapp --upgrade
Uwaga
Począwszy od maja 2024 r., rozszerzenia interfejsu wiersza polecenia platformy Azure domyślnie nie włączają funkcji w wersji zapoznawczej. Aby uzyskać dostęp do funkcji usługi Container Apps w wersji zapoznawczej, zainstaluj rozszerzenie Container Apps za pomocą polecenia --allow-preview true
.
az extension add --name containerapp --upgrade --allow-preview true
Teraz, po zainstalowaniu bieżącego rozszerzenia lub modułu Microsoft.App
, zarejestruj przestrzenie nazw i Microsoft.OperationalInsights
.
az provider register --namespace Microsoft.App
az provider register --namespace Microsoft.OperationalInsights
Tworzenie zmiennych środowiskowych
Teraz, gdy konfiguracja interfejsu wiersza polecenia platformy Azure została ukończona, możesz zdefiniować zmienne środowiskowe używane w tym artykule.
Zdefiniuj następujące zmienne w powłoce powłoki bash.
export RESOURCE_GROUP="album-containerapps"
export LOCATION="canadacentral"
export ENVIRONMENT="env-album-containerapps"
export API_NAME="album-api"
Pobieranie przykładowego kodu
Pobierz i wyodrębnij przykładową aplikację interfejsu API w wybranym języku.
Pobierz kod źródłowy na komputer.
Wyodrębnij pobieranie i przejdź do folderu containerapps-albumapi-csharp-main/src .
Pobierz kod źródłowy na komputer.
Wyodrębnij pobieranie i przejdź do folderu containerapps-albumapi-csharp-buildpack/src .
Kompilowanie i wdrażanie aplikacji kontenera
Skompiluj i wdróż pierwszą aplikację kontenera za containerapp up
pomocą polecenia . To polecenie spowoduje:
- Tworzenie grupy zasobów
- Tworzenie rejestru Azure Container Registry
- Skompiluj obraz kontenera i wypchnij go do rejestru
- Tworzenie środowiska usługi Container Apps za pomocą obszaru roboczego usługi Log Analytics
- Tworzenie i wdrażanie aplikacji kontenera przy użyciu wbudowanego obrazu kontenera
- Tworzenie grupy zasobów
- Tworzenie rejestru domyślnego w ramach środowiska
- Wykrywanie języka i środowiska uruchomieniowego aplikacji oraz kompilowanie obrazu przy użyciu odpowiedniego pakietu Buildpack
- Wypychanie obrazu do domyślnego rejestru usługi Azure Container Apps
- Tworzenie środowiska usługi Container Apps za pomocą obszaru roboczego usługi Log Analytics
- Tworzenie i wdrażanie aplikacji kontenera przy użyciu wbudowanego obrazu kontenera
Polecenie up
używa pliku Dockerfile w katalogu głównym repozytorium, aby skompilować obraz kontenera. Instrukcja EXPOSE
w pliku Dockerfile zdefiniowała port docelowy, który jest portem używanym do wysyłania ruchu przychodzącego do kontenera.
up
Jeśli polecenie nie znajdzie pliku Dockerfile, automatycznie używa pakietu Buildpack, aby przekształcić źródło aplikacji w kontener możliwy do uruchomienia. Ponieważ pakiet Buildpack próbuje uruchomić kompilację w Twoim imieniu, musisz poinformować up
polecenie, do którego portu ma być wysyłany ruch przychodzący.
W poniższym przykładzie kodu (kropka .
) informuje containerapp up
o uruchomieniu w bieżącym katalogu wyodrębnionej przykładowej aplikacji interfejsu API.
az containerapp up \
--name $API_NAME \
--location $LOCATION \
--environment $ENVIRONMENT \
--source .
az containerapp up \
--name $API_NAME \
--location $LOCATION \
--environment $ENVIRONMENT \
--ingress external \
--target-port 8080 \
--source .
Ważne
Aby wdrożyć aplikację kontenera w istniejącej grupie zasobów, dołącz --resource-group yourResourceGroup
do containerapp up
polecenia .
Weryfikowanie wdrożenia
Skopiuj nazwę FQDN do przeglądarki internetowej. W przeglądarce internetowej przejdź do /albums
punktu końcowego nazwy FQDN.
Limity
Maksymalny rozmiar przekazywania kodu źródłowego to 200 MB. Jeśli przekazywanie przekroczy limit, zwracany jest błąd 413.
Czyszczenie zasobów
Jeśli nie zamierzasz kontynuować pracy z samouczkiem Wdrażanie frontonu , możesz usunąć zasoby platformy Azure utworzone podczas tego przewodnika Szybki start za pomocą następującego polecenia.
Uwaga
Następujące polecenie usuwa określoną grupę zasobów i wszystkie zawarte w niej zasoby. Jeśli grupa zawiera zasoby poza zakresem tego przewodnika Szybki start, zostaną również usunięte.
az group delete --name $RESOURCE_GROUP
Napiwek
Masz problemy? Poinformuj nas o usłudze GitHub, otwierając problem w repozytorium usługi Azure Container Apps.
Następne kroki
Po ukończeniu tego przewodnika Szybki start możesz przejść do sekcji Samouczek: komunikacja między mikrousługami w usłudze Azure Container Apps , aby dowiedzieć się, jak wdrożyć aplikację frontonu, która wywołuje interfejs API.