Wdrażanie usługi Azure Container Apps za pomocą polecenia az containerapp up

Polecenie az containerapp up (lub up) to najszybszy sposób wdrażania aplikacji w usłudze Azure Container Apps z istniejącego obrazu, lokalnego kodu źródłowego lub repozytorium GitHub. Za pomocą tego pojedynczego polecenia możesz mieć uruchomioną i uruchomioną aplikację kontenera w ciągu kilku minut.

Polecenie az containerapp up to usprawniony sposób tworzenia i wdrażania aplikacji kontenera, które korzystają głównie z ustawień domyślnych. Należy jednak uruchomić inne polecenia interfejsu wiersza polecenia, aby skonfigurować bardziej zaawansowane ustawienia:

Aby dostosować zasób lub ustawienia skalowania aplikacji kontenera, możesz użyć up polecenia , a następnie az containerapp update polecenia , aby zmienić te ustawienia. Polecenie az containerapp up nie jest skrótem az containerapp update polecenia.

Polecenie up może utworzyć lub użyć istniejących zasobów, w tym:

  • Grupa zasobów
  • Azure Container Registry
  • Środowisko usługi Container Apps i obszar roboczy usługi Log Analytics
  • Aplikacja kontenera

Polecenie może kompilować i wypychać obraz kontenera do usługi Azure Container Registry (ACR) po podaniu lokalnego kodu źródłowego lub repozytorium GitHub. Podczas pracy z repozytorium GitHub tworzy on przepływ pracy funkcji GitHub Actions, który automatycznie kompiluje i wypycha nowy obraz kontenera podczas zatwierdzania zmian w repozytorium GitHub.

Jeśli musisz dostosować środowisko usługi Container Apps, najpierw utwórz środowisko przy użyciu az containerapp env create polecenia . Jeśli nie udostępnisz istniejącego środowiska, up polecenie wyszukuje je w grupie zasobów i, jeśli zostanie znalezione, użyje tego środowiska. Jeśli nie zostanie znalezione, tworzy środowisko z obszarem roboczym usługi Log Analytics.

Aby dowiedzieć się więcej o poleceniu az containerapp up i jego opcjach, zobacz az containerapp up.

Wymagania wstępne

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 .
Konto usługi GitHub Jeśli używasz repozytorium GitHub, zarejestruj się bezpłatnie.
Interfejs wiersza polecenia platformy Azure Zainstaluj interfejs wiersza polecenia platformy Azure.
Lokalny kod źródłowy Jeśli używasz lokalnego kodu źródłowego, musisz mieć lokalny katalog kodu źródłowego.
Istniejący obraz Jeśli używasz istniejącego obrazu, potrzebujesz serwera rejestru, nazwy obrazu i tagu. Jeśli używasz rejestru prywatnego, potrzebujesz poświadczeń.

Konfiguruj

  1. Zaloguj się na platformie Azure przy użyciu interfejsu wiersza polecenia platformy Azure.

    az login
    
  2. Następnie zainstaluj rozszerzenie Azure Container Apps dla interfejsu wiersza polecenia.

    az extension add --name containerapp --upgrade
    
  3. Po zainstalowaniu bieżącego rozszerzenia lub modułu Microsoft.App zarejestruj przestrzeń nazw.

    az provider register --namespace Microsoft.App
    
  4. Zarejestruj dostawcę Microsoft.OperationalInsights obszaru roboczego usługi Log Analytics usługi Azure Monitor.

    az provider register --namespace Microsoft.OperationalInsights
    

Wdrażanie z istniejącego obrazu

Aplikację kontenera korzystającą z istniejącego obrazu można wdrożyć w publicznym lub prywatnym rejestrze kontenerów. Jeśli wdrażasz z rejestru prywatnego, musisz podać poświadczenia przy użyciu --registry-serveropcji , --registry-usernamei --registry-password .

W tym przykładzie az containerapp up polecenie wykonuje następujące akcje:

  1. Tworzy grupę zasobów.
  2. Tworzy środowisko i obszar roboczy usługi Log Analytics.
  3. Tworzy i wdraża aplikację kontenera, która ściąga obraz z rejestru publicznego.
  4. Ustawia ruch przychodzący aplikacji kontenera na zewnętrzny z portem docelowym ustawionym na określoną wartość.

Uruchom następujące polecenie, aby wdrożyć aplikację kontenera na podstawie istniejącego obrazu. Zastąp <symbole> ZASTĘPCZE wartościami.

az containerapp up \
  --name <CONTAINER_APP_NAME> \
  --image <REGISTRY_SERVER>/<IMAGE_NAME>:<TAG> \
  --ingress external \
  --target-port <PORT_NUMBER> 

Możesz użyć up polecenia , aby ponownie wdrożyć aplikację kontenera. Jeśli chcesz ponownie wdrożyć nowy obraz, użyj --image opcji , aby określić nowy obraz. Upewnij się, że --resource-group opcje i environment są ustawione na te same wartości co oryginalne wdrożenie.

az containerapp up \
  --name <CONTAINER_APP_NAME> \
  --image <REGISTRY_SERVER>/<IMAGE_NAME>:<TAG> \
  --resource-group <RESOURCE_GROUP_NAME> \
  --environment <ENVIRONMENT_NAME> \
  --ingress external \
  --target-port <PORT_NUMBER> 

Wdrażanie z lokalnego kodu źródłowego

Gdy używasz up polecenia do wdrożenia z lokalnego źródła, kompiluje obraz kontenera, wypycha go do rejestru i wdraża aplikację kontenera. Tworzy rejestr w usłudze Azure Container Registry, jeśli go nie podasz.

Polecenie może skompilować obraz z plikiem Dockerfile lub bez go. Jeśli kompilowanie bez pliku Dockerfile jest obsługiwane w następujących językach:

  • .NET
  • Node.js
  • PHP
  • Python

W poniższym przykładzie pokazano, jak wdrożyć aplikację kontenera z lokalnego kodu źródłowego.

W tym przykładzie az containerapp up polecenie wykonuje następujące akcje:

  1. Tworzy grupę zasobów.
  2. Tworzy środowisko i obszar roboczy usługi Log Analytics.
  3. Tworzy rejestr w usłudze Azure Container Registry.
  4. Kompiluje obraz kontenera (przy użyciu pliku Dockerfile, jeśli istnieje).
  5. Wypycha obraz do rejestru.
  6. Tworzy i wdraża aplikację kontenera.

Uruchom następujące polecenie, aby wdrożyć aplikację kontenera z lokalnego kodu źródłowego:

    az containerapp up \
      --name <CONTAINER_APP_NAME> \
      --source <SOURCE_DIRECTORY>\
      --ingress external 

Gdy plik Dockerfile zawiera instrukcję EXPOSE, up polecenie konfiguruje ruch przychodzący aplikacji kontenera i port docelowy przy użyciu informacji w pliku Dockerfile.

Jeśli skonfigurowano ruch przychodzący za pośrednictwem pliku Dockerfile lub aplikacja nie wymaga ruchu przychodzącego ingress , możesz pominąć tę opcję.

Dane wyjściowe polecenia zawierają adres URL aplikacji kontenera.

Jeśli wystąpi błąd, możesz ponownie uruchomić polecenie z opcją --debug , aby uzyskać więcej informacji na temat błędu. Jeśli kompilacja zakończy się niepowodzeniem bez pliku Dockerfile, możesz spróbować dodać plik Dockerfile i ponownie uruchomić polecenie.

Aby użyć polecenia , aby ponownie wdrożyć aplikację kontenera przy użyciu az containerapp up zaktualizowanego obrazu, dołącz --resource-group argumenty i --environment . W poniższym przykładzie pokazano, jak ponownie wdrożyć aplikację kontenera z lokalnego kodu źródłowego.

  1. Wprowadź zmiany w kodzie źródłowym.

  2. Uruchom następujące polecenie:

    az containerapp up \
      --name <CONTAINER_APP_NAME> \
      --source <SOURCE_DIRECTORY> \
      --resource-group <RESOURCE_GROUP_NAME> \
      --environment <ENVIRONMENT_NAME>
    

Wdrażanie z repozytorium GitHub

Gdy używasz az containerapp up polecenia do wdrożenia z repozytorium GitHub, generuje on przepływ pracy funkcji GitHub Actions, który kompiluje obraz kontenera, wypycha go do rejestru i wdraża aplikację kontenera. Polecenie tworzy rejestr w usłudze Azure Container Registry, jeśli go nie podasz.

Do utworzenia obrazu jest wymagany plik Dockerfile. Gdy plik Dockerfile zawiera instrukcję EXPOSE, polecenie konfiguruje ruch przychodzący aplikacji kontenera i port docelowy przy użyciu informacji w pliku Dockerfile.

W poniższym przykładzie pokazano, jak wdrożyć aplikację kontenera z repozytorium GitHub.

W tym przykładzie az containerapp up polecenie wykonuje następujące akcje:

  1. Tworzy grupę zasobów.
  2. Tworzy środowisko i obszar roboczy usługi Log Analytics.
  3. Tworzy rejestr w usłudze Azure Container Registry.
  4. Kompiluje obraz kontenera przy użyciu pliku Dockerfile.
  5. Wypycha obraz do rejestru.
  6. Tworzy i wdraża aplikację kontenera.
  7. Tworzy przepływ pracy funkcji GitHub Actions w celu skompilowania obrazu kontenera i wdrożenia aplikacji kontenera po wypchnięciu przyszłych zmian do repozytorium GitHub.

Aby wdrożyć aplikację z repozytorium GitHub, uruchom następujące polecenie:

az containerapp up \
  --name <CONTAINER_APP_NAME> \
  --repo <GitHub repository URL> \
  --ingress external 

Jeśli skonfigurowano ruch przychodzący za pośrednictwem pliku Dockerfile lub aplikacja nie wymaga ruchu przychodzącego ingress , możesz pominąć tę opcję.

up Ponieważ polecenie tworzy przepływ pracy funkcji GitHub Actions, ponowne uruchomienie go w celu wdrożenia zmian na obrazie aplikacji ma niepożądany wpływ na tworzenie wielu przepływów pracy. Zamiast tego wypychaj zmiany do repozytorium GitHub, a przepływ pracy usługi GitHub automatycznie kompiluje i wdraża aplikację. Aby zmienić przepływ pracy, edytuj plik przepływu pracy w usłudze GitHub.

Następne kroki