Udostępnij za pośrednictwem


.NET .NET Aspire Bun hosting

obejmuje:integrację hostingu nie Client integracji

Notatka

Ta integracja jest częścią .NET.NET Aspire Community Toolkit i nie jest oficjalnie obsługiwana przez zespół .NET.NET Aspire.

Bun to nowoczesna, szybka i uproszczona struktura do tworzenia aplikacji internetowych za pomocą języka TypeScript. Integracja hostingu bun .NET Aspire umożliwia hostowanie aplikacji bun w projekcie hosta aplikacji .NET Aspire i udostępnianie jej innym zasobom w aplikacji.

Integracja hostingu

Integracja hostingu Bun modeluje aplikację Bun jako typ Aspire.Hosting.ApplicationModel.BunAppResource. Aby uzyskać dostęp do tego typu i interfejsów API, które umożliwiają dodanie go do projektu hosta aplikacji, zainstaluj pakiet NuGet 📦 CommunityToolkit.Aspire.Hosting.Bun. w projekcie hosta aplikacji.

Ta integracja oczekuje, że plik wykonywalny Bun został już zainstalowany na maszynie hosta i że jest dostępny w ścieżce systemowej.

dotnet add package CommunityToolkit.Aspire.Hosting.Bun

Aby uzyskać więcej informacji, zobacz dotnet add package lub Zarządzanie zależnościami pakietów w .NET aplikacjach.

Dodawanie zasobu bun

W projekcie hosta aplikacji wywołaj Aspire.Hosting.BunAppExtensions.AddBunApp na instancji builder, aby dodać zasób aplikacji Bun, jak pokazano w poniższym przykładzie:

var builder = DistributedApplication.CreateBuilder(args);

var api = builder.AddBunApp("api")
                 .WithHttpEndpoint(env: "PORT");

var exampleProject = builder.AddProject<Projects.ExampleProject>()
                            .WithReference(api);

// After adding all resources, run the app...

Domyślnie katalog roboczy aplikacji będzie folderem sąsiadującym z hostem aplikacji i będzie miał nazwę odpowiadającą nazwie podanej w zasobie, a wejściowym plikiem będzie :::no-loc text="index.ts"::. Oba te parametry można dostosować, przekazując dodatkowe parametry do metody AddBunApp.

var api = builder.AddBunApp("api", "../api-service", "start")
    .WithHttpEndpoint(env: "PORT");

Aplikację Bun można dodać jako odwołanie do innych zasobów w projekcie hosta aplikacji.

Zapewnianie, że pakiety są zainstalowane

Aby upewnić się, że aplikacja Bun ma wszystkie zależności zainstalowane zgodnie z definicją w pliku lockfile, możesz użyć metody Aspire.Hosting.BunAppExtensions.WithBunPackageInstaller, aby upewnić się, że instalacja pakietu zostanie uruchomiona przed uruchomieniem aplikacji.

var api = builder.AddBunApp("api")
                 .WithHttpEndpoint(env: "PORT")
                 .WithBunPackageInstaller();

Zobacz też