SOLVED

Old containers don't work on Windows Server Insiders?

Highlighted
Occasional Contributor

Trying to run a windowsservercore container built on a Windows Server standard build gives me an error:

 

docker : C:\docker\docker.exe: Error response from daemon: container d87c04be7972d3e5870ed1aa79e5b5c569764e4ada89cc6246d55b2f0bb8425d encountered an error during 
CreateContainer: failure in a Windows system call: The operating system of the container does not match the operating system of the host.

 

Is it true that you can't run any containers unless they were built on Windows Server Insiders?

 

PS C:\> docker version
Client:
 Version:      17.06.0-dev
 API version:  1.31
 Go version:   go1.8.3
 Git commit:   286216d
 Built:        Sat Jul 29 00:03:50 2017
 OS/Arch:      windows/amd64

Server:
 Version:      17.06.0-dev
 API version:  1.31 (minimum version 1.24)
 Go version:   go1.8.3
 Git commit:   b6d164e
 Built:        Sat Jul 29 00:27:13 2017
 OS/Arch:      windows/amd64
 Experimental: false

 

7 Replies
Highlighted
Hi, am new in the community, I would to learn more about windows Server X, please someone can tell how and where to start. waiting for your reply bernardocangulo@hotmail.com
Highlighted

Windows Server X?

 

   Bing or Google getting started with windows server

Highlighted
I'm trying containers feature on windows server insider like you, and YES old containers based on windows server does not work anymore, you have to install same container host and container version. So, for example if you want to run Nano Server lastest version, you have to run Nano Server insider version.
docker pull microsoft/nanoserver-insider
or version powershell: docker pull microsoft/nanoserver-insider
I'm find so many issues with that, but we can help and report them.
Hope it helps.
Highlighted
Download ISO file Windows Server Insider:
https://www.microsoft.com/en-us/software-download/windowsinsiderpreviewserver
Create a Virtual Machine with ISO file on your Windows 10 or Windows Server 2016 GUI (Full desktop). Enable role Hyper-V, create a virtual network connection, and create a VM on Hyper-V with ISO file. Start installation, and that's it, you have Windows Server already installed. Now, you can connect hyper console, log on and type Sconfig, configure your settings here. To interact with Windows Server Insider you have to do with powershell remote, Windows Server 2016 GUI using Server Manager tools or with hyper-v console. I recommend you learn powershell to manage the server. You can start here: https://technet.microsoft.com/en-us/library/jj574205(v=ws.11).aspx
And here for learning about powershell: https://technet.microsoft.com/en-us/itpro/powershell/windows/index
Hope it helps you and welcome to the Windows Server Insider and Core World !!!
Highlighted

Not exactly a smooth upgrade path - rebuild everything from scratch?!

 

What happens when the current insider version gets released ot the stable channel? Will the containers we build on insiders not work there as well?? It seems to make the whole insiders idea pointless for me - I can't afford the time to rebuild everything 3 times over.

 

Before I pack it all in and revert to the stable build would anyone from MS care to let me know if it's planned for insiders to *ever* be able to run containers built on the Standard Windows Server 2016?

Highlighted
Best Response confirmed by David Hirschfeld (Occasional Contributor)
Solution

`docker run --isolation=hyperv microsoft/windowsservercore` will work on Windows Server Insider & Windows 10 Insider builds. Because the kernel is different between the shipped Windows Server 2016 OS - we need to use Hyper-V isolation. That will run that container with the same kernel so there aren't any incompatibilities.

 

Can you give that a try and let us know how it works?

 

Thanks!
Patrick

Highlighted
Not sure if I can do that as the host is running on VMWare. I can give it a go though...

Good to know there's a workaround, thanks.