code: func checkImageCompatibility(imageOS, imageOSVersion string) error {
  	if imageOS == "windows" {
  		hostOSV := system.GetOSVersion()
  		splitImageOSVersion := strings.Split(imageOSVersion, ".") // eg 10.0.16299.nnnn
  		if len(splitImageOSVersion) >= 3 {
  			if imageOSBuild, err := strconv.Atoi(splitImageOSVersion[2]); err == nil {
  				if imageOSBuild > int(hostOSV.Build) {
  					errMsg := fmt.Sprintf("a Windows version %s.%s.%s-based image is incompatible with a %s host", splitImageOSVersion[0], splitImageOSVersion[1], splitImageOSVersion[2], hostOSV.ToString())
  					logrus.Debugf(errMsg)
  					return errors.New(errMsg)
  				}
  			}
  		}
  	}
  	return nil
  }
docs: // checkImageCompatibility blocks pulling incompatible images based on a later OS build
  // Fixes https://github.com/moby/moby/issues/36184.