code: func (d *Driver) Create(id, parent string, opts *graphdriver.CreateOpts) error {
  	logrus.Debugf("lcowdriver: create: id %s parent: %s", id, parent)
  
  	parentChain, err := d.getLayerChain(parent)
  	if err != nil {
  		return err
  	}
  
  	var layerChain []string
  	if parent != "" {
  		if !d.Exists(parent) {
  			return fmt.Errorf("lcowdriver: cannot create layer folder with missing parent %s", parent)
  		}
  		layerChain = []string{d.dir(parent)}
  	}
  	layerChain = append(layerChain, parentChain...)
  
  	layerPath := d.dir(id)
  	logrus.Debugf("lcowdriver: create: id %s: creating %s", id, layerPath)
  	// Standard mkdir here, not with SDDL as the dataroot was created with
  	// inheritance to just local system and administrators.
  	if err := os.MkdirAll(layerPath, 0700); err != nil {
  		return err
  	}
  
  	if err := d.setLayerChain(id, layerChain); err != nil {
  		if err2 := os.RemoveAll(layerPath); err2 != nil {
  			logrus.Warnf("failed to remove layer %s: %s", layerPath, err2)
  		}
  		return err
  	}
  	logrus.Debugf("lcowdriver: create: id %s: success", id)
  
  	return nil
  }
docs: // Create creates the folder for the layer with the given id, and
  // adds it to the layer chain.