Docker Community Forums

Share and learn in the Docker community.

Private repository (Linux) and Windows Images

Hi all,

We are really busy experimenting with Docker For Windows. Currently we are in a sprint trying to setup a private On-Premise repository. We are evaluating 3 options a.t.m. and the one I am investigating is Docker DTR in combination with UCP.

I have those 2 working, but I can’t pull any windows based images due to the fact that they can’t be pulled on a Linux Docker Daemon. The error you get is invalid Blob. For example the microsoft/windowsservercore:latest image.

Since a private registry in combination with Windows Images is mandatory for us it seems we can’t use this solution.

Are there any experiences with this? Or does Windows has a solution?

Would love to hear so we can continue our Docker project.

Why do you need to pull the image on a Linux Docker daemon? Couldn’t you set up DTR on Linux, and then use Windows daemons to push and pull from there?

First of all. Ty for the reply.

That is a good point. Maybe I also should give some more information.

I created an Ubuntu Desktop image in Hyper-V. On that machine I installed UCP and DTR. Since they both rely on Linux images(?). I then tried to pull the windowsservercore image from the public hub to the registry through UCP. When I try that I get the Blob error.

We want to have 1 central registry with all our images in it so we can pull and push from different sources. Local Environments, Servers and automated systems. So we would like to have all our images reside on a central registry. In this case the DTR.

We have tried to push and pull from Window Deamon to Nexus. This also resulted in an error (Directory not found).

From what you are saying I should setup a Windows Docker Deamon and then pull the windowscore image to that one. And then push it to the DTR on the Linux kernel?
If that works than great :slight_smile: , but isn’t that the same as pulling it from the public Docker Hub?

I’m not familiar with Nexus.

And yes, to handle Windows images in a Docker daemon, you have to use a Docker daemon running on Windows. But the registry can handle both Windows and Linux images just fine (it doesn’t actually care about the contents of the layers pushed).

If you don’t want to mess with a private registry for now, you can push and pull Windows images to Docker Hub just fine, but as mentioned, it’ll work with any registry.

I will try to push an image to the DTR from a Windows Docker Engine and see if that works.

We are running the images/containers on the windows machines so that should not be an issue.
Just this final step to get the DTR up and running.

Seems more interesting to us than setting it up on a Linux Kernel.