Se si usa un Mac con un chip Apple M1 o M2, è necessario installare la versione Arm64 dell'SDK.
Verificare che tutto sia installato correttamente
Dopo l'installazione, aprire un nuovo terminale ed eseguire il comando seguente:
Dopo l'installazione, aprire un nuovo terminale ed eseguire questo comando:
Command prompt
dotnet --version
Se l'installazione è andata a buon fine, dovresti visualizzare la versione 8.0.100 o superiore:
Command prompt
8.0.100
Se tutto sembra corretto, selezionare il pulsante Continuare di seguito per passare al passaggio successivo.
Si è verificato un errore?
Se ricevi un errore 'dotnet' non è riconosciuto come comando interno o esterno, assicurati di aver aperto un nuovo prompt dei comandi. Se il riavvio rapido del computer non risolve il problema, usa il pulsante Si è verificato un problema per ricevere assistenza.
Crea il servizio
Nel prompt dei comandi eseguire questo comando per creare l'app:
Nel terminale eseguire questi comandi per creare l'app:
Command prompt
dotnet new webapi -o MyMicroservice --no-https
Passare quindi alla nuova directory creata dal comando precedente:
Command prompt
cd MyMicroservice
Cosa significano questi comandi?
Il comando dotnet crea una nuova applicazione di tipo webapi ,ovvero un endpoint dell'API REST.
Il parametro -o crea una directory denominata MyMicroservice in cui è archiviata la tua app.
Il flag --no-https crea un'app che verrà eseguita senza un certificato HTTPS, per semplificare la distribuzione.
Il comando cd MyMicroservice ti consente di passare alla directory dell'app appena creata.
Il codice generato
Nella directory MyMicroservice sono stati creati diversi file per fornire un servizio semplice pronto per l'esecuzione, inclusi i seguenti file:
Program.cs è il file del punto di ingresso e include tutte le impostazioni e configurazioni caricate all'avvio dell'app. Inoltre, contiene il codice per una semplice API che fornisce le previsioni meteo per i prossimi cinque giorni. Avvia anche l'applicazione.
MyMycroservice.http è utilizzato per testare i progetti ASP.NET Core.
MyMicroservice.csproj specifica la versione di .NET a cui l'applicazione fa riferimento, le librerie utilizzate dal progetto, e altro ancora.
Il file launchSettings.json all'interno della directory Properties definisce impostazioni del profilo diverse per l'ambiente di sviluppo locale. Un numero di porta compreso tra 5000 e 5300 viene assegnato automaticamente al momento della creazione del progetto e salvato in questo file.
Il codice seguente mostra il contenuto del file Program.cs:
Program.cs
var builder = WebApplication.CreateBuilder(args);// Add services to the container.// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbucklebuilder.Services.AddEndpointsApiExplorer();builder.Services.AddSwaggerGen();var app = builder.Build();// Configure the HTTP request pipeline.if (app.Environment.IsDevelopment()){ app.UseSwagger(); app.UseSwaggerUI();}var summaries = new[]{ "Freezing", "Bracing", "Chilly", "Cool", "Mild", "Warm", "Balmy", "Hot", "Sweltering", "Scorching"};app.MapGet("/weatherforecast", () =>{ var forecast = Enumerable.Range(1, 5).Select(index => new WeatherForecast ( DateOnly.FromDateTime(DateTime.Now.AddDays(index)), Random.Shared.Next(-20, 55), summaries[Random.Shared.Next(summaries.Length)] )) .ToArray(); return forecast;}).WithName("GetWeatherForecast").WithOpenApi();app.Run();record WeatherForecast(DateOnly Date, int TemperatureC, string? Summary){ public int TemperatureF => 32 + (int)(TemperatureC / 0.5556);}
Seleziona il pulsante Continua qui sotto per procedere al passaggio successivo.
Si è verificato un errore?
Se si riceve un messaggio simile a Impossibile creare il modello "API Web ASP.NET Core". Non è stato possibile creare il modello. Dettagli: l'accesso al percorso 'C:\Windows\System32\MyMicroservice' è stato negato, modificare la directory corrente in una directory in cui si dispone delle autorizzazioni per creare una nuova cartella e provare a eseguire di nuovo il comando.
Se Windows non riesce a trovare l'SDK quando si prova a creare il progetto e si è certi di aver installato l'SDK, il computer potrebbe avere un problema con la variabile di ambiente PATH. Vedere questo post su Stack Overflowper istruzioni su come diagnosticare e risolvere il problema.
Se non riesci a risolvere il problema riscontrato, seleziona il pulsante Si è verificato un problema di seguito seguente per ricevere assistenza.
Esegui il servizio
Nel prompt dei comandi, eseguire il comando seguente:
Nel terminale eseguire questo comando:
Command prompt
dotnet run
Dovrebbe essere visualizzato un output simile al seguente:
Command prompt
Building...info: Microsoft.Hosting.Lifetime[14]Now listening on: http://localhost:5020info: Microsoft.Hosting.Lifetime[0]Application started. Press Ctrl+C to shut down.info: Microsoft.Hosting.Lifetime[0]Hosting environment: Developmentinfo: Microsoft.Hosting.Lifetime[0]Content root path: C:\Users\Ana\MyMicroservice
Attendi che l'applicazione mostri che è in ascolto su http://localhost:<port number>, quindi apri un browser e passa a http://localhost:<port number>/weatherforecast.
In questo esempio, veniva mostrato che era in ascolto sulla porta 5020, quindi l'immagine seguente mostra l'URL localhost:5020/weatherforecast.
Congratulazioni, è stato eseguito un semplice servizio in esecuzione.
Premere CTRL+C nel prompt dei comandi per terminare il comando dotnet run che esegue il servizio in locale.
Premi CTRL+C sul terminale per terminare il comando dotnet run che esegue il servizio in locale.
Si è verificato un errore?
Se si riceve un messaggio simile a Non è stata trovata alcuna pagina Web per l'indirizzo Web: http://localhost:5020, assicurarsi di visualizzare la pagina Previsioni meteo dell'applicazione. L'URL dovrebbe essere simile a http://localhost:5020/weatherforecast e non solo http://localhost:5020.
Installare Docker
Docker è una piattaforma che consente di combinare un'app con la sua configurazione e le sue dipendenze in un'unica unità distribuibile in modo indipendente, denominata contenitore.
Se Docker è già installato, verifica che sia la versione 23.0.0 o quella successiva.
Scarica e installa
Verrà richiesto di eseguire la registrazione per Docker Store prima di poter scaricare il programma di installazione.
Per impostazione predefinita, Docker userà i contenitori Linux in Windows. Lasciare queste impostazioni di configurazione invariate quando richiesto nel programma di installazione.
Dopo l'installazione di Docker, potrebbe essere richiesto di disconnettersi per completare l'installazione.
Verifica che Docker sia pronto per l'uso
Dopo l'installazione, aprire un nuovo terminale ed eseguire il comando seguente:
Dopo l'installazione, aprire un nuovo terminale ed eseguire questo comando:
Command prompt
docker --version
Se il comando viene eseguito e vengono visualizzate alcune informazioni sulla versione, Docker è installato correttamente.
Aggiungi metadati Docker
Per l'esecuzione con un'immagine Docker, è necessario un Dockerfile, ovvero un file di testo che contiene le istruzioni su come compilare l'app come immagine Docker. Un'immagine Docker contiene tutto il necessario per eseguire l'app come contenitore Docker.
Torna alla directory dell'app
Dopo aver aperto un nuovo prompt dei comandi nel passaggio precedente, è necessario tornare alla directory in cui è stato creato il servizio.
Dopo aver aperto un nuovo terminale nel passaggio precedente, è necessario tornare alla directory in cui è stato creato il servizio.
Command prompt
cd MyMicroservice
Aggiungi un Dockerfile
Crea un file denominato Dockerfile con questo comando:
Command prompt
touch Dockerfile
Command prompt
fsutil file createnew Dockerfile 0
Puoi quindi aprirlo nel tuo editor di testo preferito.
È quindi possibile aprirlo manualmente nell'editor di testo preferito o con questo comando:
Command prompt
open Dockerfile
Command prompt
start Dockerfile
Sostituire il contenuto di Dockerfile con il codice seguente nell'editor di testo:
Nota: assicurati di assegnare al file il nome Dockerfile e non Dockerfile.txt o altro.
Facoltativo: aggiungere un file .dockerignore
Un file con estensione dockerignore riduce il set di file usati come parte di 'docker build'. Un minor numero di file si traduce in compilazioni più veloci.
Creare un file denominato .dockerignore (simile al file .gitignore, se si ha familiarità con questi file) con questo comando:
Command prompt
touch .dockerignore
Command prompt
fsutil file createnew .dockerignore 0
Puoi quindi aprirlo nel tuo editor di testo preferito.
È quindi possibile aprirlo manualmente nell'editor di testo preferito o con questo comando:
Command prompt
open .dockerignore
Command prompt
start .dockerignore
Sostituire il contenuto di .dockerignore con il codice seguente nell'editor di testo:
.dockerignore
Dockerfile[b|B]in[O|o]bj
Crea un'immagine Docker
Eseguire il comando seguente:
Command prompt
docker build -t mymicroservice .
Il comando docker build utilizza il Dockerfile per compilare un'immagine Docker.
Il parametro -t mymicroservice indica di contrassegnare l'immagine come mymicroservice.
Il parametro finale indica la directory da utilizzare per trovare il Dockerfile (. specifica la directory corrente).
Questo comando consente di scaricare e compilare tutte le dipendenze per creare un'immagine Docker e potrebbe richiedere del tempo.
Puoi eseguire il comando seguente per visualizzare un elenco di tutte le immagini disponibili nel computer, inclusa quella appena creata.
Command prompt
docker images
Esegui immagine Docker
È possibile eseguire l'app in un contenitore usando il comando seguente:
Command prompt
docker run -it --rm -p 3000:8080 --name mymicroservicecontainer mymicroservice
Per accedere all'applicazione in esecuzione in un contenitore, puoi passare al seguente URL: http://localhost:3000/weatherforecast
Facoltativamente, è possibile visualizzare il contenitore in esecuzione in un prompt dei comandi separato usando il comando seguente:
Facoltativamente, è possibile visualizzare il contenitore in esecuzione in una finestra del terminale separata usando il comando seguente:
Command prompt
docker ps
Premi CTRL+C sul prompt dei comandi per terminare il comando docker run che sta eseguendo il servizio in un contenitore.
Premi CTRL+C sul terminale per terminare il comando docker run che esegue il servizio in un contenitore.
Congratulazioni! È stato creato un piccolo servizio indipendente che può essere distribuito e ridimensionato usando contenitori Docker.
Questi sono i blocchi predefiniti fondamentali dei microservizi.
Si è verificato un errore?
Se si riceve un messaggio simile a ERRORE: errore durante la connessione: questo errore può indicare che il daemon Docker non è in esecuzione, potrebbe indicare che è necessario avviare l'applicazione Docker. Verificare che il client Docker sia in esecuzione eseguendo docker run hello-world. Verranno eseguiti il pull e l'immagine. Per altre informazioni, vedere la documentazione di Docker per istruzioni su come diagnosticare e risolvere il problema.
Passaggi successivi
Congratulazioni! Hai creato un servizio semplice e poi lo hai eseguito in un contenitore Docker.
La prossima esercitazione spiega come distribuire il tuo microservizio nel cloud.