Per iniziare: Preparare Windows per i contenitori
Si applica a: Windows Server 2022, Windows Server 2019, Windows Server 2016, Windows 10 e 11
Questa esercitazione descrive come:
Prerequisiti
Windows 10 e 11
Per eseguire i contenitori in Windows 10 o 11, è necessario quanto segue:
- Un sistema computer fisico che esegue Windows 10 o 11 Professional o Enterprise con aggiornamento dell'anniversario (versione 1607) o versione successiva.
- Abilitazione di Hyper-V.
Nota
A partire dall'aggiornamento di ottobre 2018 Windows 10, Microsoft non consente più agli utenti di eseguire un contenitore windows in modalità di isolamento del processo in Windows 10 Enterprise o Professional per scopi di sviluppo o test. Per altre informazioni, vedere le Domande frequenti.
I contenitori di Windows Server usano l'isolamento Hyper-V per impostazione predefinita in Windows 10 e 11 per fornire agli sviluppatori la stessa versione e configurazione del kernel che verrà usata nell'ambiente di produzione. Per altre informazioni sull'isolamento hyper-V, vedere Modalità di isolamento.
Windows Server
Per gli ambienti di sviluppo, per eseguire i contenitori di Windows Server è necessario un server fisico o una macchina virtuale che esegue Windows Server.
Per i test, è possibile scaricare una copia di Windows Server 2022 Evaluation o di Windows Server Insider Preview.
Container-Ready macchine virtuali di Azure
Per molte applicazioni e paradigmi di orchestrazione è necessario compilare e distribuire macchine virtuali personalizzate. Con la transizione del supporto per Windows Container Runtime a Mirantis, il runtime del contenitore non viene più fornito con un'offerta di macchina virtuale del Marketplace. La parte restante di questa guida illustra in dettaglio come creare una macchina virtuale per Azure con il runtime del contenitore installato e pronto per l'uso.
Azure continuerà a offrire un'esperienza end-to-end completa e completamente gestita tramite i servizio Azure Kubernetes sia nel cloud che in locale. Il servizio Azure Kubernetes e il servizio Azure Kubernetes-HCI sono servizi completamente gestiti con un sovraccarico di gestione inferiore rispetto a quello usato con distribuzioni personalizzate. Il supporto per il runtime del contenitore è incluso nel servizio Azure Kubernetes e nel servizio Azure Kubernetes-HCI nella sottoscrizione di Azure.
Quando si considerano le opzioni seguenti, tenere presente tre aspetti. Spetta all'organizzazione decidere quale aspetto si vuole ottimizzare:
- Quanto è complesso implementare?
- Qual è il costo?
- In che modo influisce sul carico di lavoro nell'ambiente di produzione?
Ognuno di questi metodi viene fornito come opzione per rendere l'esperienza di costruzione delle macchine virtuali di Azure pronte per i contenitori il più possibile. Le sottosezioni seguenti illustrano i vantaggi e i contro di ogni opzione insieme a come iniziare.
Azure Image Builder
Il vantaggio dell'uso di Image Builder è che la configurazione viene eseguita durante un periodo di compilazione e non avrà alcun effetto sul carico di lavoro in fase di esecuzione; quando il set di scalabilità di macchine virtuali crea un'istanza di una nuova macchina virtuale dall'immagine personalizzata, l'immagine sarà già stata preparata, quindi non è necessario dedicare tempo e sarà immediatamente pronta per l'esecuzione dei contenitori.
Il generatore di immagini di Azure, tuttavia, può essere più complesso da implementare e sono necessari più passaggi rispetto alle estensioni di script. Inoltre, mentre il servizio Image Builder è gratuito, è necessario gestire per l'utilizzo di calcolo, archiviazione e rete associato al processo di compilazione (altri dettagli qui)
Per iniziare a creare un'immagine di macchina virtuale Windows Server personalizzata, è stata creata una guida che illustra dettagliatamente il processo. Gli script di PowerShell indicati di seguito possono essere usati insieme a questa guida per installare il runtime del contenitore preferito.
Suggerimento
Assicurarsi di memorizzare nella cache le immagini del contenitore che si prevede di usare in locale nella macchina virtuale. Ciò consentirà di migliorare l'ora di inizio del contenitore dopo la distribuzione. Gli script seguenti consentono di eseguire questa operazione.
Estensioni script personalizzate
Le estensioni script personalizzate sono più rapide da implementare e il costo è solo nel prezzo nominale per archiviare lo script in Azure o GitHub. Tuttavia, lo script può essere eseguito solo dopo che è stato effettuato il provisioning di una macchina virtuale, pertanto è necessario budget per un tempo aggiuntivo dedicato per preparare correttamente la macchina virtuale in fase di scalabilità orizzontale.
Usando gli script offerti di seguito è possibile configurare i set di scalabilità di macchine virtuali per installare il runtime del contenitore scelto al momento del provisioning. Seguire la guida per informazioni su come impostare un'estensione di script personalizzata.
Installare il runtime del contenitore
Windows 10 e 11
È possibile installare Docker in Windows 10 o 11 edizioni Professional ed Enterprise seguendo questa procedura.
Scaricare e installare Docker Desktop e creare un account Docker, se non ne è già disponibile uno. È possibile creare un account Docker gratuito per utenti personali o di piccole imprese, tuttavia, per le aziende di grandi dimensioni, è prevista una tariffa mensile. Per informazioni dettagliate, vedere la documentazione di Docker.
Durante l'installazione, impostare il tipo di contenitore predefinito su contenitori Windows. Per passare ai contenitori Windows al termine dell'installazione, è possibile usare l'elemento Docker nell'area di notifica di Windows (come illustrato sotto) o il comando seguente in un prompt di PowerShell:
& $Env:ProgramFiles\Docker\Docker\DockerCli.exe -SwitchDaemon .
Windows Admin Center
È possibile usare Windows Admin Center per configurare correttamente un computer Windows Server come host del contenitore. Per iniziare, verificare di aver installato nell'istanza di Windows Admin Center l'estensione Contenitori più recente. Per altre informazioni su come installare e configurare le estensioni, vedere la documentazione di Windows Admin Center. Con l'estensione Contenitori installata, usare come destinazione il computer Windows Server da configurare e selezionare l'opzione Contenitori:
Fare clic sul pulsante Installa. Windows Admin Center avvierà in background la configurazione di Windows Server e Docker. Al termine del processo, è possibile aggiornare la pagina e visualizzare le altre funzionalità dell'estensione Contenitori.
Windows Server
Per eseguire un contenitore Windows, è necessario disporre di un runtime di contenitori supportato disponibile nel computer. I runtime attualmente supportati in Windows sono in contenitori, Moby e Mirantis Container Runtime.
Questa sezione descrive in dettaglio il processo di installazione di ogni in una copia specifica di Windows, incluso un set di script di PowerShell che semplificano l'installazione di ogni runtime in pochi passaggi.
Docker Community Edition (CE) fornisce un ambiente di runtime standard per i contenitori con un'API comune e un'interfaccia della riga di comando. È gestita dalla community open source come parte del progetto Moby.
Per iniziare a usare Docker in Windows Server, è stato creato uno script di PowerShell che configura l'ambiente per abilitare le funzionalità del sistema operativo correlate ai contenitori e installare il runtime Docker.
Invoke-WebRequest -UseBasicParsing "https://raw.githubusercontent.com/microsoft/Windows-Containers/Main/helpful_tools/Install-DockerCE/install-docker-ce.ps1" -o install-docker-ce.ps1
.\install-docker-ce.ps1
Per informazioni dettagliate sulla configurazione, vedere Motore Docker in Windows.
Passaggi successivi
Nota
Se hai letto questa guida e vuoi indicazioni aggiuntive dal team di prodotti Contenitori di Windows, puoi contattarci in github/Windows-Containers in cui troverai informazioni su come ottenere tempo nel calendario del team del prodotto per chat.
Ora che l'ambiente è stato configurato, seguire il collegamento per informazioni su come eseguire un contenitore.