Quickstart: Bouwen en implementeren vanuit een opslagplaats naar Azure Container Apps
In dit artikel wordt beschreven hoe u een microservice bouwt en implementeert in Azure Container Apps vanuit een GitHub-opslagplaats met behulp van de programmeertaal van uw keuze. In deze quickstart maakt u een voorbeeldmicroservice, die een back-end-web-API-service vertegenwoordigt die een statische verzameling muziekalbums retourneert.
Deze voorbeeldtoepassing is beschikbaar in twee versies. Eén versie bevat een container, waarbij de bron een Dockerfile bevat. De andere versie heeft geen Dockerfile. Selecteer de versie die het beste overeenkomt met uw broncode. Als u geen containers hebt, selecteert u bovenaan de optie Geen Dockerfile .
Notitie
U kunt deze voorbeeldtoepassing ook bouwen en implementeren vanuit uw lokale bestandssysteem. Zie Build van lokale broncode en implementeer uw toepassing in Azure Container Apps voor meer informatie.
In de volgende schermopname ziet u de uitvoer van de album-API-service die u implementeert.
Vereisten
U hebt het volgende nodig om dit project te voltooien:
Vereiste | Instructies |
---|---|
Azure-account | Als u nog geen account hebt, maakt u gratis een account. U hebt de machtiging Inzender of Eigenaar voor het Azure-abonnement nodig om door te gaan. Raadpleeg Azure-rollen toewijzen met behulp van Azure Portal voor meer informatie. |
GitHub-account | Ontvang er gratis een. |
git | Git installeren |
Azure-CLI | Installeer de Azure CLI. |
Instellingen
Als u zich wilt aanmelden bij Azure vanuit de CLI, voert u de volgende opdracht uit en volgt u de aanwijzingen om het verificatieproces te voltooien.
az login
Voer de upgradeopdracht uit om ervoor te zorgen dat u de nieuwste versie van de CLI uitvoert.
az upgrade
Installeer of werk vervolgens de Azure Container Apps-extensie voor de CLI bij.
Als u fouten ontvangt over ontbrekende parameters wanneer u opdrachten uitvoert az containerapp
in Azure CLI of cmdlets vanuit de Az.App
module in Azure PowerShell, moet u ervoor zorgen dat de nieuwste versie van de Azure Container Apps-extensie is geïnstalleerd.
az extension add --name containerapp --upgrade
Notitie
Vanaf mei 2024 schakelen Azure CLI-extensies standaard geen preview-functies meer in. Als u toegang wilt krijgen tot de preview-functies van Container Apps, installeert u de Container Apps-extensie met --allow-preview true
.
az extension add --name containerapp --upgrade --allow-preview true
Nu de huidige extensie of module is geïnstalleerd, registreert u de Microsoft.App
en Microsoft.OperationalInsights
naamruimten.
az provider register --namespace Microsoft.App
az provider register --namespace Microsoft.OperationalInsights
Omgevingsvariabelen maken
Nu uw Azure CLI-installatie is voltooid, kunt u de omgevingsvariabelen definiëren die in dit artikel worden gebruikt.
Definieer de volgende variabelen in uw bash-shell.
export RESOURCE_GROUP="album-containerapps"
export LOCATION="canadacentral"
export ENVIRONMENT="env-album-containerapps"
export API_NAME="album-api"
export GITHUB_USERNAME="<YOUR_GITHUB_USERNAME>"
Voordat u deze opdracht uitvoert, moet u deze vervangen door <YOUR_GITHUB_USERNAME>
uw GitHub-gebruikersnaam.
Definieer vervolgens een containerregisternaam die uniek voor u is.
export ACR_NAME="acaalbums"$GITHUB_USERNAME
De GitHub-opslagplaats voorbereiden
Ga in een browservenster naar de GitHub-opslagplaats voor uw voorkeurstaal en fork de opslagplaats.
Ga in een browservenster naar de GitHub-opslagplaats voor uw voorkeurstaal en fork de opslagplaats , inclusief vertakkingen.
De container-app bouwen en implementeren
Bouw en implementeer uw eerste container-app vanuit uw geforkte GitHub-opslagplaats met de containerapp up
opdracht. Met deze opdracht wordt het volgende uitgevoerd:
- De resourcegroep maken
- De Container Apps-omgeving maken met een Log Analytics-werkruimte
- Een Azure Container Registry maken
- Een GitHub Action-werkstroom maken om de container-app te bouwen en te implementeren
- De resourcegroep maken
- De Container Apps-omgeving maken met een Log Analytics-werkruimte
- Automatisch een standaardregister maken als onderdeel van uw omgeving
- Een GitHub Action-werkstroom maken om de container-app te bouwen en te implementeren
Wanneer u nieuwe code naar de opslagplaats pusht, doet de GitHub Action het volgende:
- Bouw de containerinstallatiekopieën en push deze naar Azure Container Registry
- De containerinstallatiekopieën implementeren in de gemaakte container-app
De up
opdracht maakt gebruik van het Dockerfile in de hoofdmap van de opslagplaats om de containerinstallatiekopieën te bouwen. De EXPOSE
instructie in het Dockerfile definieert de doelpoort. Een Docker-bestand is niet vereist om een container-app te bouwen.
- De taal en runtime automatisch detecteren
- Bouw de installatiekopieën met behulp van het juiste Buildpack
- Push de installatiekopieën naar het standaardregister van Azure Container Apps
De container-app moet toegankelijk zijn voor inkomend verkeer. Zorg ervoor dat poort 8080 beschikbaar wordt gesteld om te luisteren naar binnenkomende aanvragen.
Vervang in de volgende opdracht de <YOUR_GITHUB_REPOSITORY_NAME>
naam van uw GitHub-opslagplaats in de vorm van https://github.com/<OWNER>/<REPOSITORY-NAME>
of <OWNER>/<REPOSITORY-NAME>
.
Vervang in de volgende opdracht de <YOUR_GITHUB_REPOSITORY_NAME>
naam van uw GitHub-opslagplaats in de vorm van https://github.com/<OWNER>/<REPOSITORY-NAME>
of <OWNER>/<REPOSITORY-NAME>
. Gebruik de --branch buildpack
optie om te verwijzen naar de voorbeeldbron zonder een Dockerfile.
az containerapp up \
--name $API_NAME \
--resource-group $RESOURCE_GROUP \
--location $LOCATION \
--environment $ENVIRONMENT \
--context-path ./src \
--repo <YOUR_GITHUB_REPOSITORY_NAME>
az containerapp up \
--name $API_NAME \
--resource-group $RESOURCE_GROUP \
--location $LOCATION \
--environment $ENVIRONMENT \
--context-path ./src \
--ingress external \
--target-port 8080 \
--repo <YOUR_GITHUB_REPOSITORY_NAME>
--branch buildpack
--
Met behulp van de URL en de gebruikerscode die in de terminal wordt weergegeven, gaat u naar de activeringspagina van het GitHub-apparaat in een browser en voert u de gebruikerscode in op de pagina. Volg de aanwijzingen om de Azure CLI toegang te geven tot uw GitHub-opslagplaats.
Met de up
opdracht maakt u een GitHub Action-werkstroom in de map .github/werkstromen van uw opslagplaats. De werkstroom wordt geactiveerd om uw container-app te bouwen en te implementeren wanneer u wijzigingen naar de opslagplaats pusht.
Implementatie verifiëren
Kopieer de domeinnaam die wordt geretourneerd door de containerapp up
browser naar een webbrowser. Ga vanuit uw webbrowser naar het /albums
eindpunt van de URL.
Resources opschonen
Als u niet doorgaat met de zelfstudie Een front-end implementeren, kunt u de Azure-resources die tijdens deze quickstart zijn gemaakt, verwijderen met de volgende opdracht.
Let op
Met de volgende opdracht verwijdert u de opgegeven resourcegroep en alle resources erin. Als de groep resources bevat die buiten het bereik van deze quickstart vallen, worden ze ook verwijderd.
az group delete --name $RESOURCE_GROUP
Tip
Ondervindt u problemen? Laat het ons weten op GitHub door een probleem te openen in de Azure Container Apps-opslagplaats.
Volgende stappen
Nadat u deze quickstart hebt voltooid, kunt u doorgaan met zelfstudie: Communicatie tussen microservices in Azure Container Apps om te leren hoe u een front-endtoepassing implementeert die de API aanroept.