Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Jakmile vytvoříte novou šablonu rozhraní příkazového řádku pro vývojáře Azure neboazd začnete s existující šablonou, můžete rozšířit a vyvíjet její aplikaci a infrastrukturu při změně požadavků. Tento kurz ukazuje, jak do šablony přidat novou službu Azure, aniž byste museli spoléhat na modul, který šablona již poskytuje.
Začnete s hello-azd šablonou, vytvoříte modul Bicep, který definuje prostředek Azure Translator, odkážete na tento modul z vstupního bodu infrastruktury šablony a zpřístupníte jeho výstupy jako hodnoty prostředí azd. Kurz se zaměřuje na rozšíření infrastruktury a neupravuje kód aplikace.
Note
Následující změny můžete provést přímo nebo pomocí pomocníka pro psaní kódu AI. Bez ohledu na metodu vytváření zkontrolujte výsledné soubory a před nasazením šablonu ověřte.
Předpoklady
K dokončení tohoto kurzu potřebujete:
- Nainstalované rozhraní příkazového řádku Azure Developer CLI.
- Předplatné služby Azure.
- Oprávnění k vytváření prostředků Azure v předplatném
- Prázdný adresář pro inicializovanou šablonu.
Inicializujte šablonu
Otevřete terminál v prázdném adresáři a pak inicializujete hello-azd šablonu v daném adresáři:
azd init --template hello-azd .
Šablona obsahuje:
- Aplikace v jazyce C# nasazená do Azure Container Apps jako služba
acavazure.yaml. - Uživatelem přiřazená spravovaná identita pro aplikaci.
- Účet Azure Storage s kontejnerem objektů blob a tabulkou.
- Azure Container Registry a prostředí Azure Container Apps.
- Opakovaně použitelné moduly Bicep v sekci
infra/core.
Pokyny k výběru a kontrole šablony před inicializací najdete v tématu Začínáme z existující šablony.
Vytvoření modulu Translator
Vytvořte soubor s názvem infra/translator.bicepručně nebo pomocí pomocníka pro kódování AI. Tento nový modul je samostatný a nezávisí na modulech ze spouštěcí šablony:
@description('Name of the Azure Translator resource.')
param name string
@description('Azure region for the resource.')
param location string
@description('Tags to apply to the resource.')
param tags object = {}
@description('Pricing tier for Azure Translator.')
@allowed([
'F0'
'S1'
])
param sku string = 'F0'
resource translator 'Microsoft.CognitiveServices/accounts@2023-05-01' = {
name: name
location: location
kind: 'TextTranslation'
sku: {
name: sku
}
properties: {
customSubDomainName: name
disableLocalAuth: true
publicNetworkAccess: 'Enabled'
}
tags: tags
}
output name string = translator.name
output endpoint string = translator.properties.endpoint
Modul používá TextTranslation druh prostředku a zakáže ověřování pomocí místního klíče. Úroveň F0 je užitečná pro vyhodnocování, ale v rámci jednoho předplatného umožňuje pouze jeden bezplatný prostředek služby Translator. Použijte S1 , pokud předplatné již obsahuje F0 prostředek nebo pokud projekt vyžaduje placenou úroveň.
Important
Tento úvodní příklad umožňuje veřejný koncový bod, abyste mohli zřídit prostředek bez přidání síťové infrastruktury. Než tento model použijete v produkčním prostředí, vyhodnoťte privátní koncové body, řízení přístupu k síti, monitorování a požadavky vaší organizace na zabezpečení.
Odkaz na modul z main.bicep
Šablona hello-azd definuje rg skupinu prostředků , locationtags, a resourceToken hodnoty v infra/main.bicep. Tuto úpravu můžete udělat ručně nebo zobrazit výzvu asistentovi AI, aby ho přidal. Za deklaraci prostředku rg přidejte následující modul:
module translator './translator.bicep' = {
name: 'translator'
scope: rg
params: {
name: 'translator-${resourceToken}'
location: location
tags: tags
}
}
Vlastnost scope nasadí modul do skupiny prostředků, kterou šablona vytvoří. Stávající hodnota resourceToken zajišťuje, že název prostředku Translator je pro každé prostředí odlišný.
Export výstupů translatoru
Na konec infra/main.biceppříkazu přidejte následující výstupy:
output AZURE_TRANSLATOR_NAME string = translator.outputs.name
output AZURE_TRANSLATOR_ENDPOINT string = translator.outputs.endpoint
Po nasazení azd zaznamená tyto neutajené výstupy v aktivním prostředí. Pozdější změna kódu aplikace může tyto hodnoty použít k vyhledání prostředku Translator.
Zřízení a ověření infrastruktury
Zřiďte infrastrukturu šablony bez nasazení kódu aplikace:
azd provision
Spusťte a potvrďte azd env get-values , že výstup obsahuje AZURE_TRANSLATOR_NAME a AZURE_TRANSLATOR_ENDPOINT. Na portálu Azure ověřte, že skupina prostředků obsahuje prostředek Azure Translator.
V tuto chvíli šablona zřídí službu AI, ale nepřipojí k ní ukázkovou aplikaci. Pokud chcete tuto integraci dokončit, nakonfigurujte přístup s nejnižšími oprávněními pro spravovanou identitu aplikace, předejte do aplikace koncový bod a přidejte do kódu aplikace klienta Translator. Další informace najdete v Azure Translator dokumentaci.
Vyčistěte zdroje
Pokud už prostředky nepotřebujete, odstraňte je, abyste se vyhnuli průběžným poplatkům:
azd down --purge
Související obsah
- Přehled vývoje šablon
- Začínáme s novou šablonou
- Začínáme z existující šablony
- Prozkoumání a úprava souborů šablon
Požádat o pomoc
Informace o tom, jak nahlásit chybu, požádat o pomoc nebo navrhnout novou funkci pro rozhraní příkazového řádku vývojářů Azure, najdete na stránce řešení problémů a podpora.