Sdílet prostřednictvím


Rychlý start: Vytvoření řešení Aspire s využitím služby Azure App Configuration

V tomto rychlém startu použijete Azure App Configuration k externímu ukládání a správě nastavení aplikace pro projekt Aspire. Budete používat integrační knihovny Azure App Configuration Aspire ke zřízení prostředku konfigurace aplikace a k použití této konfigurace v každé distribuované aplikaci.

Požadavky

Místní testování aplikace

Šablona Aspire Starter obsahuje front-endovou webovou aplikaci, která komunikuje s minimálním projektem rozhraní API. Projekt rozhraní API slouží k poskytování fiktivních dat o počasí frontendu. Front-endová aplikace je nakonfigurovaná tak, aby používala zjišťování služeb pro připojení k projektu rozhraní API. Existuje také AppHost projekt, který orchestruje všechny distribuované aplikace v řešení Aspire.

  1. Spusťte projekt AppHost. V prohlížeči se zobrazí řídicí panel Aspire.

    Snímek obrazovky řídicího panelu Aspire s prostředky webové front-endové služby a služby API

  2. Klikněte na adresu URL webového front-endu. Zobrazí se stránka s uvítací zprávou.

    Snímek obrazovky webové aplikace s uvítací zprávou

Přidání služby Azure App Configuration do řešení Aspire

  1. Přejděte do AppHost adresáře projektu. Spuštěním následujícího příkazu přidejte Aspire.Hosting.Azure.AppConfiguration balíček NuGet.

    dotnet add package Aspire.Hosting.Azure.AppConfiguration
    
  2. Otevřete soubor AppHost.csproj a ověřte balíčky. Měl by se zobrazit odkaz na balíček s názvem Aspire.Hosting.AppHost . Ujistěte se, že Aspire.Hosting.AppHost verze balíčku je minimálně tak vysoká jako nainstalovaná verze Aspire.Hosting.Azure.AppConfiguration .

  3. Otevřete soubor AppHost.cs a přidejte následující kód.

    var builder = DistributedApplication.CreateBuilder(args);
    
    // Add an Azure App Configuration resource
    var appConfiguration = builder.AddAzureAppConfiguration("appconfiguration");
    

    Důležité

    Při volání AddAzureAppConfigurationdáváte aplikaci pokyn, aby během spouštění aplikace dynamicky generovala prostředky Azure. Aplikace musí nakonfigurovat příslušné předplatné a umístění. Další informace najdete v tématu Místní zřizování Azure. Pokud používáte nejnovější sadu Aspire SDK, můžete informace o předplatném nakonfigurovat prostřednictvím řídicího panelu Aspire. Snímek obrazovky řídicího panelu Aspire s žádostí o informace o předplatném Azure

    Poznámka:

    K předplatnému Azure musíte mít přiřazenou roli Vlastník nebo Správce uživatelských přístupů . Tyto role jsou potřeba k zřízení přiřazení rolí v rámci procesu zřizování.

    Návod

    Můžete odkazovat na existující prostředky App Configuration řetězením volání na RunAsExisting()builder.AddAzureAppConfiguration("appconfig"). Další informace najdete v tématu Použití existujících prostředků Azure.

  4. Přidejte odkaz na prostředek App Configuration a nakonfigurujte webfrontend projekt tak, aby na něj čekal.

    builder.AddProject<Projects.AspireApp_Web>("webfrontend")
        .WithExternalHttpEndpoints()
        .WithHttpHealthCheck("/health")
        .WithReference(apiService)
        .WaitFor(apiService)
        .WithReference(appConfiguration) // reference the App Configuration resource
        .WaitFor(appConfiguration); // wait for the App Configuration resource to enter the Running state before starting the resource
    
  5. Spusťte projekt AppHost. Vidíte, že se prostředek Azure App Configuration nasazuje.

    Snímek obrazovky se zřizováním prostředku Azure App Configuration na řídicím panelu Aspire

  6. Počkejte několik minut a uvidíte, že je prostředek Azure App Configuration zřízený a spuštěný.

    Snímek obrazovky řídicího panelu Aspire se spuštěným prostředkem azure App Configuration

  7. Kliknutím na adresu URL nasazení na řídicím panelu Aspire přejděte na web Azure Portal. Uvidíte, že nasazení je hotové a můžete přejít k prostředku Azure App Configuration.

    Snímek obrazovky webu Azure Portal znázorňující dokončení nasazení služby App Configuration

Přidejte klíč-hodnotu

Přidejte do úložiště App Configuration následující klíč-hodnotu a ponechte Štítek a Typ obsahu ve výchozím nastavení. Další informace o tom, jak přidat hodnoty klíčů do úložiště pomocí webu Azure Portal nebo rozhraní příkazového řádku, najdete v tématu Vytvoření hodnoty klíče.

Key Hodnota
TestApp:Settings:Message Dobrý den z Azure App Configuration!

Přidání služby Azure App Configuration do řešení Aspire

  1. Přejděte do AppHost adresáře projektu. Spuštěním následujícího příkazu přidejte Aspire.Hosting.Azure.AppConfiguration balíček NuGet.

    dotnet add package Aspire.Hosting.Azure.AppConfiguration
    
  2. Otevřete Soubor AppHost.csproj. Ujistěte se, že Aspire.Hosting.AppHost verze balíčku není starší než verze, kterou jste nainstalovali. Jinak musíte balíček Aspire.Hosting.AppHost aktualizovat.

  3. Otevřete soubor AppHost.cs a přidejte následující kód.

    var builder = DistributedApplication.CreateBuilder(args);
    
    // Add an Azure App Configuration resource
    var appConfiguration = builder.AddAzureAppConfiguration("appconfiguration")
        .RunAsEmulator(emulator => { // use the App Configuration emulator
            emulator.WithDataBindMount();
        });
    

    Důležité

    Když zavoláte RunAsEmulator, načte App Configuration emulator image a spustí kontejner jako prostředek App Configuration. Ujistěte se, že na počítači máte kontejnerový runtime vyhovující OCI. Další informace najdete v modulu Aspire Container Runtime.

    Návod

    Můžete volat WithDataBindMount nebo WithDataVolume, abyste nakonfigurovali prostředek emulátoru pro trvalé ukládání kontejnerů, takže nebudete muset pokaždé znovu vytvářet hodnoty klíčů.

  4. Přidejte odkaz na prostředek App Configuration a nakonfigurujte webfrontend projekt tak, aby na něj čekal.

    builder.AddProject<Projects.AspireApp_Web>("webfrontend")
        .WithExternalHttpEndpoints()
        .WithHttpHealthCheck("/health")
        .WithReference(apiService)
        .WaitFor(apiService)
        .WithReference(appConfiguration) // reference the App Configuration resource
        .WaitFor(appConfiguration); // wait for the App Configuration resource to enter the Running state before starting the resource
    
  5. Spusťte běhové prostředí kontejneru. V tomto kurzu používáme Docker Desktop.

  6. Spusťte projekt AppHost. Přejděte na řídicí panel Aspire. Vidíte, že prostředek emulátoru App Configuration běží.

    Snímek obrazovky řídicího panelu Aspire zobrazující prostředek emulátoru konfigurace aplikace

    Kontejner se spustí pro spuštění emulátoru služby App Configuration.

    Snímek obrazovky desktopu Dockeru se spuštěným kontejnerem

Přidejte klíč-hodnotu

  1. Klikněte na adresu URL prostředku appconfiguration. Zobrazí se uživatelské rozhraní emulátoru konfigurace aplikace.

  2. Klikněte na Create tlačítko v pravém horním rohu.

    Snímek obrazovky s uživatelským rozhraním emulátoru konfigurace aplikace

  3. Přidejte následující hodnotu klíče.

    Key Hodnota
    TestApp:Settings:Message Dobrý den z Azure App Configuration!
  4. Klikněte na tlačítko Save.

    Snímek obrazovky s uživatelským rozhraním emulátoru konfigurace aplikace pro vytvoření nové hodnoty klíče

Použijte konfiguraci aplikace ve webové aplikaci

  1. Přejděte do Web adresáře projektu. Spuštěním následujícího příkazu přidejte Aspire.Microsoft.Extensions.Configuration.AzureAppConfiguration balíček NuGet.

    dotnet add package Aspire.Microsoft.Extensions.Configuration.AzureAppConfiguration
    
  2. Otevřete soubor Program.cs a přidejte následující kód.

    var builder = WebApplication.CreateBuilder(args);
    
    // Use Azure App Configuration
    builder.AddAzureAppConfiguration("appconfiguration"); // use the resource name defined in the AppHost project
    
  3. Otevřete soubor Components/Pages/Home.razor a aktualizujte ho následujícím kódem.

    @page "/"
    
    @inject IConfiguration Configuration
    
    <PageTitle>Home</PageTitle>
    
    <h1>Hello, world!</h1>
    
    @if (!string.IsNullOrWhiteSpace(message))
    {
        <div class="alert alert-info">@message</div>
    }
    else
    {
        <div class="alert alert-info">Welcome to your new app.</div>
    }
    
    @code {
        private string? message;
    
        protected override void OnInitialized()
        {
            string msg = Configuration["TestApp:Settings:Message"];
            message = string.IsNullOrWhiteSpace(msg) ? null : msg;
        }
    }
    
  4. AppHost projekt. Přejděte na řídicí panel Aspire a klikněte na adresu URL webového front-endu.

    Snímek obrazovky řídicího panelu Aspire zobrazující prostředky

  5. Zobrazí se stránka s uvítací zprávou ze služby Azure App Configuration.

    Snímek obrazovky webové aplikace s uvítací zprávou z Azure App Configuration

Další kroky

V tomto rychlém průvodci vám:

  • Přidání prostředku Azure App Configuration do řešení Aspire
  • Čtěte své klíč-hodnoty z Azure App Configuration pomocí integrační knihovny Aspire App Configuration.
  • Zobrazili jste webovou stránku pomocí nastavení, která jste nakonfigurovali v konfiguraci aplikace.

Pokud chcete zjistit, jak nakonfigurovat aplikaci Aspire tak, aby dynamicky aktualizovala nastavení konfigurace, pokračujte dalším kurzem.

Pokud chcete zjistit, jak používat příznaky funkcí v aplikaci Aspire, pokračujte dalším kurzem.

Další informace o emulátoru služby Azure App Configuration najdete v následujícím dokumentu.