Skip to content

ctr does not work with multi-arch images on Windows #5297

@jsturtevant

Description

@jsturtevant

Description
While working on #5188 I found that ctr.exe doesn't work with multiple platform images when running on 20H2 host:

cmd /c ver   
Microsoft Windows [Version 10.0.19042.867]

bin/ctr.exe run --rm k8s.gcr.io/pause:3.5 test2
ctr: hcsshim::CreateComputeSystem test2: The container operating system does not match the host operating system.            

While the pause image does support 20h2:

/manifest-tool-linux-amd64  inspect --raw k8s.gcr.io/pause:3.5 | jq '.[] .Platform'                                                                                                                                                                                                                               
...                                           
{                                                                                            
  "architecture": "amd64",                                                                   
  "os": "windows",                                                                           
  "os.version": "10.0.19042.867"                                                             
}  

Steps to reproduce the issue:
1.
2.
3.

Describe the results you received:
error when pulling image

Describe the results you expected:
To pull multi arch images via ctr

What version of containerd are you using:

$ containerd --version
containerd github.com/containerd/containerd v1.5.0-beta.4-87-g75a0c2b7d.m 75a0c2b7d35cb91714bbfdf0fcadfe25f777ee8d

Any other relevant information (runC version, CRI configuration, OS/Kernel version, etc.):

runc --version
$ runc --version

crictl info
$ crictl info

uname -a
$ uname -a

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions