You are here: Home
Les systèmes d'exploitation
OS Serveurs
Windows Serveur 2016
Fonctionnalités 2016
Les containers





« L'enseignement devrait être ainsi : celui qui le reçoit le recueille comme un don inestimable mais jamais comme une contrainte pénible. »
Attention!!! Lancez toutes les commandes dans PowerShell et non dans PowerShellISE
La configuration à mettre ne place pour ce TP est simple.
Get-VMNetworkAdapter -VMName hyper-vvirt | Set-VMNetworkAdapter -MacAddressSpoofing On
Install-PackageProvider -Name NuGet -Force
(option car la commande suivante va vérifier si le provider Nuget est disponible et l'installe en cas d'abscence de ce dernier)
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
Install-Package -Name Docker -ProviderName DockerMsftProvider
Restart-Computer -Force
Docker
docker search microsoft
docker pull microsoft/iis:windowsservercore
Invoke-WebRequest https://aka.ms/tp5/Update-Container-Host -OutFile update-containerhost.ps1
.\update-containerhost.ps1
docker run --name WebForm -d -p 80:80 microsoft/iis:windowsservercore cmd
docker ps
#Cette commande génère un nouveau container nommé WebForm se basant sur un image microsoft/iis:windowsservercore
# se connecter au container en powershell
docker exec -ti WebForm powershell
Commande obsolète
Enter-PSSession -ContainerId (get-container -Name WebForm).ID -RunAsAdministrator
Install-WindowsFeature web-server
ATTENTION A LA CASSE
ipconfig
exit
docker ps
docker stop WebForm
docker commit WebForm winservcoreweb
docker images
Déploiement d'un nouveau container à partir de cette nouvelle image
# Site N°1
mkdir c:\docker\site1
echo "Bienvenue sur le site n°1" > c:\docker\site1\index.html
docker run --name webform1 -p 80:80 winservcoreweb cmd
docker exec -ti webform1 powershell
Get-Module
Import-Module WebAdministration
Get-Module
ipconfig
exit
# Testez l'accès au site
docker cp c:\docker\site1\index.html webform1:C:\inetpub\wwwroot\iisstart.htm
# Générez le container
docker ps
docker stop webform1
docker commit webform1 winform1
docker ps
docker images
# Site N°2
docker run --name webform2 -p 80:80 winservcoreweb cmd
docker exec -ti webform2 powershell
Import-Module WebAdministration
mkdir c:\site2
echo "Bienvenue sur le site numero 2" > c:\site2\index.html
Set-ItemProperty 'IIS:\Sites\Default Web Site' -name physicalpath -value c:\site2
# Testez l'accès au site
ipconfig
exit
http://
docker ps
docker stop webform2
docker commit webform2 winform2
docker run --name webformtest1 -p 81:80 winform1 cmd
CONTROL + C
docker run --name webformtest2 -p 82:80 winform2 cmd
CONTROL + C
docker exec -ti webformtest1 powershell
ipconfig
docker exec -ti webformtest2 powershell
ipconfig
exit
http://ContainerhostIP
docker ps
docker stop ContainerID
docker ps -a
docker rm webformtest1
docker rm webformtest2
Register-PSRepository -Name DockerPS-Dev -SourceLocation https://ci.appveyor.com/nuget/docker-powershell-dev
Install-Module Docker -Repository DockerPS-Dev -Scope CurrentUser
Update-Module Docker
Save-Module Docker -Path .