Просмотр исходного кода

Windows: Block (v2) pulling Linux images

Signed-off-by: John Howard <jhoward@microsoft.com>
John Howard 9 лет назад
Родитель
Сommit
4e3d7ca4ae
1 измененных файлов с 5 добавлено и 0 удалено
  1. 5 0
      distribution/pull_v2.go

+ 5 - 0
distribution/pull_v2.go

@@ -550,6 +550,11 @@ func (p *v2Puller) pullSchema2(ctx context.Context, ref reference.Named, mfst *s
 		if unmarshalledConfig.RootFS == nil {
 			return "", "", errors.New("image config has no rootfs section")
 		}
+		// https://github.com/docker/docker/issues/24766 - Err on the side of caution,
+		// explicitly blocking images intended for linux from the Windows daemon
+		if unmarshalledConfig.OS == "linux" {
+			return "", "", fmt.Errorf("image operating system %q cannot be used on this platform", unmarshalledConfig.OS)
+		}
 		downloadRootFS = *unmarshalledConfig.RootFS
 		downloadRootFS.DiffIDs = []layer.DiffID{}
 	} else {