Se non conosci Docker e vuoi imparare a creare il tuo primo contenitore Docker Windows Server, sei fortunato. In questo articolo imparerai come iniziare da zero:non è necessaria alcuna esperienza precedente!
Non sei un lettore? Guarda questo video correlato. Non vedi il video? Assicurati che il blocco degli annunci sia disattivato.Windows Server ha fatto molta strada da Windows NT. In primo luogo, potremmo virtualizzare Windows Server e ora possiamo persino giocare nel regno di quella che una volta era una funzionalità esclusiva di Linux:i container!
Al giorno d'oggi, possiamo eseguire Windows su un container in Docker con la stessa facilità di un container basato su Linux, ma come? Poiché Microsoft è un attore abbastanza recente nel mercato dei container, il concetto di Docker e container è probabilmente nuovo per molti negozi Microsoft. Il modo migliore per imparare qualcosa è fare, quindi facciamolo.
Per questo articolo, inizieremo da un host Windows Server 2016 poiché questa è la prima versione di Windows in cui puoi eseguire un vero host Docker.
Scarica e installa il modulo Docker e il pacchetto
Su Windows Server 2016, vai alla Galleria PowerShell e scarica il modulo DockerMsftProvider. Questo è il modulo PowerShell che contiene tutti i provider di pacchetti che ti permetteranno di scaricare e installare le utilità Docker tramite PowerShellGet Install-Package
comando.
PS> Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force
PS> Install-Module -Name DockerMsftProvider -Force
Una volta installato il provider, è giunto il momento di metterlo a frutto installando la pagina Docker da esso.
PS> Install-Package -Name docker -ProviderName DockerMsftProvider -Force
WARNING: A restart is required to enable the containers feature. Please restart your machine.
Name Version Source Summary
---- ------- ------ -------
Docker 17.06.2-ee-6 DockerDefault Contains Docker EE for use with Windows Server.
Indirizzeremo l'avviso che il programma di installazione del pacchetto ci dice e quindi riavvieremo il nostro host Windows Server con Restart-Computer -Force
.
Una volta che il server torna online, controlla se il demone docker funziona correttamente controllando la versione. Se ottieni una sezione client e una server con le informazioni sulla versione per ciascuno, sei a posto!
PS> docker version
Client:
Version: 17.06.2-ee-6
API version: 1.30
Go version: go1.8.3
Git commit: e75fdb8
Built: Mon Nov 27 22:46:09 2017
OS/Arch: windows/amd64
Server:
Version: 17.06.2-ee-6
API version: 1.30 (minimum version 1.24)
Go version: go1.8.3
Git commit: e75fdb8
Built: Mon Nov 27 22:55:16 2017
OS/Arch: windows/amd64
Experimental: false
Download dell'immagine di base
Poi arriva la parte in cui è necessaria un'immagine di base del contenitore. Il modo più semplice per ottenere un'immagine sul tuo server è tramite Docker Hub. Per ottenere un'immagine dal Docker Hub, puoi utilizzare il pull
parametro nell'utilità Docker.
Correlati:come creare un'immagine Windows Docker con Docker Build
Per ora, tirerò giù una nuova copia di Windows Server Core. Una volta avviato, vedrai l'avanzamento del download per ogni immagine nel repository definito.
PS> docker pull microsoft/windowsservercore
Using default tag: latest
latest: Pulling from microsoft/windowsservercore
3889bb8d808b: Downloading [========================> ] 2.019GB/4.07GB
cfb27c9ba25f: Download complete
Una volta scaricata l'immagine per Windows, il motore Docker estrarrà ciascuna immagine dal suo stato compresso. Sfortunatamente, per le immagini di Windows Server, questo può richiedere un po' di tempo. Ma una volta estratte le immagini, hai creato il tuo primo contenitore Windows Server con Docker!
Esecuzione dei comandi nel contenitore Docker Windows Server
L'ultimo pezzo solo per confermare che il contenitore è intatto e funzionante è inviargli un comando di esecuzione usando docker run
. docker run
è un comando che invia un comando non interattivo al contenitore. È essenzialmente come aprire cmd
ed eseguire i comandi in questo modo.
Qualsiasi comando funzionerà, quindi per come vedremo se possiamo restituire il nome host del contenitore usando il hostname
comando.
PS> docker run microsoft/windowsservercore
hostname69c7de26ea48
Se restituisce qualcosa tranne un errore, il gioco è fatto! Ora hai una configurazione host di Windows Server 2016 con il servizio Docker in esecuzione in grado di estrarre e inviare immagini Docker da/verso Docker Hub ed eseguire qualsiasi numero di contenitori desideri.