Vytvoření a publikování funkce do Azure pomocí Javy a Gradlu
V tomto článku se dozvíte, jak sestavit a publikovat projekt funkcí Java do Azure Functions pomocí nástroje příkazového řádku Gradle. Až budete hotovi, kód funkce se spustí v Azure v bezserverovém plánu hostování a aktivuje se požadavkem HTTP.
Poznámka:
Pokud gradle není vaším upřednostňovaným vývojářskými nástroji, podívejte se na naše podobné kurzy pro vývojáře v Javě, které používají Maven, IntelliJ IDEA a VS Code.
Požadavky
K vývoji funkcí pomocí Javy musíte mít nainstalovaný následující software:
- Java Developer Kit verze 8, 11, 17 nebo 21. (Java 21 se v současné době podporuje jenom ve verzi Preview v Linuxu)
- Azure CLI
- Azure Functions Core Tools verze 2.6.666 nebo novější
- Gradle, verze 6.8 a vyšší
Potřebujete také aktivní předplatné Azure. Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet Azure před tím, než začnete.
Důležité
Pro dokončení tohoto rychlého startu musí být proměnná prostředí JAVA_HOME nastavená na umístění instalace sady JDK.
Příprava projektu Functions
Pomocí následujícího příkazu naklonujte ukázkový projekt:
git clone https://github.com/Azure-Samples/azure-functions-samples-java.git
cd azure-functions-samples-java/triggers-bindings
Otevřete build.gradle
a změňte appName
v následující části jedinečný název, abyste se vyhnuli konfliktu názvů domén při nasazování do Azure.
azurefunctions {
resourceGroup = 'java-functions-group'
appName = 'azure-functions-sample-demo'
pricingTier = 'Consumption'
region = 'westus'
runtime {
os = 'windows'
}
localDebug = "transport=dt_socket,server=y,suspend=n,address=5005"
}
Otevřete nový soubor Function.java z cesty src/main/java v textovém editoru a zkontrolujte vygenerovaný kód. Tento kód je funkce aktivovaná protokolem HTTP, která odpovídá textu požadavku.
Místní spuštění funkce
Spuštěním následujícího příkazu sestavte a spusťte projekt funkce:
gradle jar --info
gradle azureFunctionsRun
Když projekt spustíte místně, zobrazí se výstup podobný následujícímu:
... Now listening on: http://0.0.0.0:7071 Application started. Press Ctrl+C to shut down. Http Functions: HttpExample: [GET,POST] http://localhost:7071/api/HttpExample ...
Pomocí následujícího příkazu cURL v novém okně terminálu aktivujte funkci z příkazového řádku:
curl -w "\n" http://localhost:7071/api/HttpExample --data AzureFunctions
Očekávaný výstup je následující:
Hello, AzureFunctions
Poznámka:
Pokud nastavíte hodnotu authLevel na FUNCTION
hodnotu nebo ADMIN
, přístupový klíč se při místním spuštění nevyžaduje.
Pomocí klávesové zkratky Ctrl+C
v terminálu zastavte kód aplikace.
Nasazení funkce do Azure
Aplikace funkcí a související prostředky se vytvoří v Azure při prvním nasazení aplikace funkcí. Před nasazením se pomocí příkazu az login Azure CLI přihlaste ke svému předplatnému Azure.
az login
Tip
Pokud má váš účet přístup k více předplatným, pomocí příkazu az account set nastavte výchozí předplatné pro tuto relaci.
Pomocí následujícího příkazu nasaďte projekt do nové aplikace funkcí.
gradle azureFunctionsDeploy
Tím se v Azure vytvoří následující prostředky na základě hodnot v souboru build.gradle:
- Skupina prostředků. Pojmenováno pomocí skupiny prostředků , kterou jste zadali.
- Účet úložiště. Vyžaduje funkce. Název se generuje náhodně na základě požadavků na název účtu úložiště.
- Plán služby App Service. Bezserverový plán Consumption, který je hostitelem vaší aplikace funkcí v zadané oblasti. Název se generuje náhodně.
- Aplikace funkcí. Aplikace funkcí je jednotka nasazení a spouštění pro vaše funkce. Název je název vaší aplikace, připojený s náhodně vygenerovaným číslem.
Nasazení také zabalí soubory projektu a nasadí je do nové aplikace funkcí pomocí nasazení zip s povoleným režimem spuštění z balíčku.
authLevel pro trigger HTTP v ukázkovém projektu je ANONYMOUS
, což přeskočí ověřování. Pokud ale používáte jiný typ authLevel nebo FUNCTION
ADMIN
, musíte získat klíč funkce pro volání koncového bodu funkce přes PROTOKOL HTTP. Nejjednodušší způsob, jak získat funkční klíč, je z webu Azure Portal.
Získání adresy URL triggeru HTTP
Adresu URL potřebnou k aktivaci funkce můžete získat pomocí klíče funkce na webu Azure Portal.
Přejděte na web Azure Portal, přihlaste se, zadejte název aplikace vaší aplikace funkcí do nabídky Hledat v horní části stránky a stiskněte enter.
V aplikaci funkcí vyberte Funkce, zvolte funkci a pak klikněte na Získat adresu URL funkce v pravém horním rohu.
Zvolte výchozí (klíč funkce) a vyberte Kopírovat.
K přístupu k funkci teď můžete použít zkopírovanou adresu URL.
Ověření funkce v Azure
Pokud chcete ověřit aplikaci funkcí spuštěnou v Azure pomocí cURL
, nahraďte adresu URL z ukázky níže adresou URL, kterou jste zkopírovali z portálu.
curl -w "\n" http://azure-functions-sample-demo.azurewebsites.net/api/HttpExample --data AzureFunctions
Tím se odešle požadavek POST do koncového bodu funkce s textem AzureFunctions
požadavku. Zobrazí se následující odpověď.
Hello, AzureFunctions
Další kroky
Vytvořili jste projekt funkcí v Javě s využitím funkce aktivované protokolem HTTP, spustili jste ho na místním počítači a nasadili do Azure. Teď můžete funkci rozšířit...