In .NET Aspire può essere usato, oltre che per lo sviluppo, anche come strumento per la pubblicazione degli applicativi.
// utilizzo docker compose builder.AddDockerComposePublisher();
Fino alla versione 9.2 il rilascio di ogni risorsa prevedeva l'utilizzo del medesimo ambiente. Questa tecnica, seppur ottima nella maggior parte dei casi, presenta un limite quando la pubblicazione delle risorse deve essere effettuata su infrastrutture diverse: potremmo volere un servizio Backend API su Azure Container App, un frontend in Kubernetes ed altre API in Docker Compose.
Benchè la definizione globale non sia andata in disuso, come nell'esempio sottostante
// utilizzo globale di Azure Container Apps
builder.AddAzureContainerAppEnvironment("env");La modalità di pubblicazione segue, dalla versione 9.3, un modello distribuito e non più centralizzato, dove è possibile definire vari ambienti ed assegnarli ai servizi adeguati
// ambiente k8s
var k8s = builder.AddKubernetesEnvironment("k8s-env");
// ambiente docker compose
var compose = builder.AddDockerComposeEnvironment("docker-env");
// pubblicazione tramite docker compose
builder.AddProject<Projects.Api>("api")
.WithComputeEnvironment(compose);
// pubblicazione tramite k8s
builder.AddProject<Projects.Frontend>("frontend")
.WithComputeEnvironment(k8s);È bene specificare che nel caso di più environment di pubblicazione, se non viene utilizzato WithComputeEnvironment su una o più risorse, .NET Aspire lancerà un errore perchè non in grado di capire quale compute environment utilizzare.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Interagire con Azure DevOps tramite MCP Server
Configuratione e utilizzo .NET Aspire CLI
Come automatizzare il download dei report di billing da GitHub Enterprise
Usare la parola chiave field per semplificare la scrittura di proprietà in C#
Rendere affidabile lo scale out su Azure App Service
Gestire pubblicazione Kubernetes tramite .NET Aspire
Stop Building Chatbots. Build a team
Esporre un server MCP esistente con Azure API Management
Referenziare un package NuGet in una file based app .NET
How to be a DevOps engineer in the AI era
Integrare il Docker Model Runner in un workflow di GitHub
Canary release con .NET Aspire


