Publicera en funktion i Azure med core tools

Slutförd

Du kan använda Core Tools för att publicera dina funktioner till Azure.

Nu när du har skapat och testat funktionen simple interest vill du publicera den till Azure. Det skulle vara fantastiskt att se det igång på webben. När det är det kan du skicka URL:en till dina kollegor så att de kan ringa den var som helst.

Skapa en funktionsapp

Innan du kan använda Core Tools för att publicera ett projekt måste du skapa nödvändiga resurser i Azure, inklusive funktionsappen som används som värd för projektet. Functions kräver också ett lagringskonto. Du kan inte använda Core Tools för att skapa dessa Azure-resurser. I stället skapar du funktionsappar via Azure-hanteringsverktyg, som omfattar Azure-portalen, Azure CLI och Azure PowerShell. I nästa övning kör du Azure CLI-kommandot az functionapp create för att skapa en funktionsapp som du kan publicera koden till.

Inom ramen för den här självstudien är det viktigaste alternativet att tänka på när du skapar en funktionsapp språkkörningen. En funktionsapp stöder endast en enda språkkörning. Om du redan har ett lokalt funktionsprojekt som du vill publicera måste du skapa funktionsappen med samma språkkörning. När du försöker distribuera ett projekt till en app med en annan körning stoppas publiceringen med ett fel.

Publicera till Azure

Om du vill publicera ditt funktionsprojekt till en funktionsapp i Azure kör func azure functionapp publish <app_name> du från projektmappen functions. <app_name> är namnet på målfunktionsappen i Azure och inte namnet på din projektmapp, som kan ha ett annat namn.

Publishing a function app with func azure functionapp publish.

Core Tools ber dig inte att logga in på Azure. I stället får den åtkomst till dina prenumerationer och resurser genom att läsa in sessionsinformationen från Azure CLI eller Azure PowerShell. Om du inte har en aktiv session i något av dessa verktyg misslyckas publiceringen. Det går att publicera från Core Tools utan Azure CLI eller Azure PowerShell. Det är dock enklare om du har dem. Vi rekommenderar att du installerar det ena eller det andra. Logga in innan du försöker publicera.

När utdata anger att publiceringen är klar är dina funktioner igång i Azure. De slutliga publiceringsutdata visar de funktioner som har publicerats, inklusive anrops-URL:en för varje HTTP-utlöst funktion.

Bra att känna till

Här följer några saker att tänka på när du använder Core Tools för att publicera dina funktioner:

  • Core Tools validerar eller testar inte funktionskoden under publiceringen.
  • Se till att använda func start för att utföra tester innan du publicerar!
  • När du publicerar stoppas funktioner som redan finns i målappen och tas bort innan innehållet i ditt projekt distribueras.
  • Du kan inte kombinera funktioner från flera projekt till en app genom att publicera dem i den här sekvensen.
  • Alla funktioner som du vill ha i appen måste finnas i ett projekt.
  • Publicering till Azure skapar ingen typ av relation mellan det lokala projektet och målfunktionsappen.
  • Du kan publicera ett enda funktionsprojekt till flera funktionsapper.
  • Du kan också publicera om ett projekt till samma app upprepade gånger när du arbetar med din kod.
  • Url:erna för anrop som visas när du har publicerat kan innehålla en code parameter i frågesträngen.
  • Du kan se den på skärmbilden: ?code=4FowT1ywMNoxqa...
  • HTTP-utlösarfunktioner har en auktoriseringsnivå för funktionen, vilket kräver att du skickar en hemlig funktionsnyckel i begäranderubrikerna eller frågesträngen.
  • Core Tools returnerar nyckeln i frågesträngen för den visade URL:en för din bekvämlighet.