Pushing image from Windows 2016 to DTR: invalid manifest

Hi,
I am trying to push images from a Windows 2016 machine to the trusted registry. Pushing from a linux machine works fine, but pushing from the Windows machine throws an exception.

UCP installed on a Ubuntu 14.04.5 LTS machine:

docker version
Client:
Version: 1.12.2-cs2
API version: 1.24
Go version: go1.6.3
Git commit: d5fda6e
Built: Thu Oct 13 01:58:32 2016
OS/Arch: linux/amd64

Server:
Version: 1.12.2-cs2
API version: 1.24
Go version: go1.6.3
Git commit: d5fda6e
Built: Thu Oct 13 01:58:32 2016
OS/Arch: linux/amd64

DTR installed on a Ubuntu 14.04.5 LTS machine:

docker version
Client:
Version: 1.12.2-cs2
API version: 1.24
Go version: go1.6.3
Git commit: d5fda6e
Built: Thu Oct 13 01:58:32 2016
OS/Arch: linux/amd64

Server:
Version: 1.12.2-cs2
API version: 1.24
Go version: go1.6.3
Git commit: d5fda6e
Built: Thu Oct 13 01:58:32 2016
OS/Arch: linux/amd64

Expected behavior

According to the presentations it should be possible to push images from a linux- and a Windows 2016 machine

Actual behavior

Pushing a linux based image from a linux machine

docker version
Client:
Version: 1.12.2-cs2
API version: 1.24
Go version: go1.6.3
Git commit: d5fda6e
Built: Thu Oct 13 01:58:32 2016
OS/Arch: linux/amd64

Server:
Version: 1.12.2-cs2
API version: 1.24
Go version: go1.6.3
Git commit: d5fda6e
Built: Thu Oct 13 01:58:32 2016
OS/Arch: linux/amd64

docker login -u … -p … dtr
docker push dtr/…
works fine.

Pushing a windows nanoserver image from a Windows 2016 server

docker version
Client:
Version: 1.12.2-cs2-ws-beta
API version: 1.25
Go version: go1.7.1
Git commit: 050b611
Built: Thu Oct 11 02:35:40 2016
OS/Arch: windows/amd64

Server:
Version: 1.12.2-cs2-ws-beta
API version: 1.25
Go version: go1.7.1
Git commit: 050b611
Built: Thu Oct 11 02:35:40 2016
OS/Arch: windows/amd64

docker login -u … -p … dtr
docker push dtr/…
throws the following error:
The push refers to a repository […]
2c195a33d84d: Preparing
342d4e407550: Preparing
342d4e407550: Skipped foreign layer
2c195a33d84d: Skipped foreign layer
docker : manifest invlaid: manifest invalid
At line:1 char:1

  • docker push …
  •      + CategoryInfo                 : NotSpecified: (manifest invalid: manifest invalid:Stri
         ng) [], RemoteException
         + FullQualifiedErrorId        : NativeCommandError

Below thread can be combined with this one since this seems like the same issue:

It would be nice if this could get looked into.

Regards,
Robin

I also made an issue on GitHub.

Hey everyone,

This is fixed in DTR 2.2 and is already part of the DTR 2.2 beta program, if you’ve joined that.