Docker oficjalnie w Windows Server 2016...

Docker oficjalnie w Windows Server 2016

W ostatnich dniach września Microsoft oficjalnie ogłosił wsparcie dla technologii kontenerów Docker w Windows Server 2016 i Windows 10 – Commercially Supported Docker Engine.

Zanim zaczniemy, warto nadmienić, że kontenery w Windows działają tylko w Windows. Są kompilowane dla Windows Server kernel i pracują w userlandzie. Zatem, by budować i uruchamiać kontenery w Windows, to Windows musi je wspierać. Wsparcie konteneryzacji nosi oficjalną nazwę: Commercially Supported Docker Engine w skrócie “CS Docker Engine”.

Zespół inżynierów Docker Inc. odpowiada za testy, sprawdzanie i wsparcie pakietów Docker Engine dla platformy Windows Server 2016 bez dodatkowych kosztów. Dla klientów całość dostępna będzie od października 2016.

Użytkownicy Windows 10 mogą skorzystać ze wsparcia dla kontenerów po zainstalowaniu Windows 10 Anniversary Update:

https://blogs.windows.com/windowsexperience/2016/08/02/how-to-get-the-windows-10-anniversary-update/#rMo5dYJwBQkvLJ15.97

Warto dodać w tym miejscu, że obrazy kontenerów mogą być oparte tylko o Windows Server Core i Nanoserver – nie o Windows 10. Prostą drogą do posiadania Windows Docker Engine jest instalacja Docker for Windows. Ostatnia publiczna beta tego środowiska wspiera środowisko deweloperskie zarówno dla Linux, jak i Windows.

Środowisko Windows Server 2016

Środowisko Windows Server 2016 to miejsce, gdzie kontenery powinny być osadzane na środowiskach produkcyjnych. Jeśli planujemy rozwój tej platformy, to zalecane jest, by środowisko deweloperskie wspierane było przez Windows Server 2016 na maszynach wirtualnych lub Windows 10 ze wsparciem dla kontenerów. Jeśli planujemy włączyć wsparcie Docker Engine w Windows Server 2016, należy zainstalować wszystkie wymagane poprawki, a następnie zainstalować Windows-native Docker Engine (to nie to samo co Docker for Windows). Można to zrobić z PowerShella:

# Add the containers feature and restart
Install-WindowsFeature containers
Restart-Computer -Force

# Download, install and configure Docker Engine
Invoke-WebRequest "https://download.docker.com/components/engine/windows-server/cs-1.12/docker.zip" -OutFile "$env:TEMP\docker.zip" -UseBasicParsing

Expand-Archive -Path "$env:TEMP\docker.zip" -DestinationPath $env:ProgramFiles

# For quick use, does not require shell to be restarted.
$env:path += ";c:\program files\docker"

# For persistent use, will apply even after a reboot. 
[Environment]::SetEnvironmentVariable("Path", $env:Path + ";C:\Program Files\Docker", [EnvironmentVariableTarget]::Machine)

# Start a new PowerShell prompt before proceeding
dockerd --register-service
Start-Service docker

Wszystkich zainteresowanych szczegółami odsyłamy do stron Microsoftu. Tam znajdziecie wszystkie potrzebne informacje dotyczące tego jak tej innowacyjnej technologii ze świata Linux używać w świecie Windows. Dzięki tej nowości jesteście w stanie budować heterogeniczne środowiska, w których dzięki jednemu narzędziu, jakim jest Docker, można zarządzać obrazami aplikacji dla Linux i Windows. Daje to możliwość używania jednej terminologii w całym heterogenicznym środowisku i pozwala szybko tworzyć środowiska deweloperskie, produkcyjne jak i osadzać swoje kontenery w chmurze.