Eseguire l'hosting di ASP.NET Core nei contenitori Docker

Per apprendere come eseguire l'hosting di app ASP.NET Core in Docker, leggere gli articoli seguenti:

Introduzione a contenitori e Docker
Descrive la containerizzazione, un approccio allo sviluppo del software in cui un'applicazione o un servizio, le relative dipendenze e la configurazione corrispondente sono inclusi in uno stesso pacchetto come immagine del contenitore. L'immagine può essere testata e quindi distribuita in un host.

Che cos'è Docker?
Informazioni su Docker, un progetto open source per automatizzare la distribuzione di app come contenitori portabili e autosufficienti eseguibili nel cloud o in locale.

Terminologia di Docker
Informazioni su termini e definizioni relativi alla tecnologia Docker.

Contenitori, immagini e registri di Docker
Informazioni sulle modalità con cui le immagini del contenitore Docker vengono archiviate in un registro immagini per una distribuzione uniforme nei diversi ambienti.

Immagini Docker per ASP.NET Core Informazioni sulle procedure per compilare un'app di ASP.NET Core e inserirla in un contenitore Docker. Si analizzano le immagini Docker gestite da Microsoft e si esaminano casi d'uso.

Esempi di Docker .NET Esempi e linee guida che illustrano come usare .NET e Docker per sviluppo, test e produzione.

Strumenti contenitore di Visual Studio
Informazioni su come Visual Studio supporta la compilazione, il debug e l'esecuzione di app ASP.NET Core destinate a .NET Framework o .NET Core in Docker per Windows. Sono supportati sia contenitori Windows che contenitori Linux.

Pubblicare nel Registro Azure Container
Informazioni su come usare l'estensione degli Strumenti contenitore di Visual Studio per distribuire un'app ASP.NET Core in un host Docker in Azure con PowerShell.

Configurare ASP.NET Core per l'utilizzo di server proxy e servizi di bilanciamento del carico
Potrebbero essere necessari interventi di configurazione aggiuntivi per le app ospitate dietro a server proxy e a servizi di bilanciamento del carico. Il passaggio delle richieste attraverso un proxy spesso oscura le informazioni sulla richiesta originale, ad esempio lo schema e l'indirizzo IP del client. Potrebbe essere necessario inoltrare alcune informazioni sulla richiesta manualmente all'app.

GC usando Docker e contenitori di piccole dimensioni Illustra la selezione di GC con contenitori di piccole dimensioni.

System.IO.IOException: è stato raggiunto il limite utente configurato (128) sul numero di istanze inotify

La disabilitazione reloadOnChange può ridurre significativamente il numero di file aperti. Per disabilitare il ricaricamento dei file di configurazione, impostare la variabile di ambiente DOTNET_HOSTBUILDER__RELOADCONFIGONCHANGE=false

Per approcci alternativi o per lasciare commenti e suggerimenti su questo problema, vedere questo problema di GitHub.