Documentation ¶
Index ¶
- func Init(home string, options graphdriver.Options) (graphdriver.Driver, error)
- func SupportsNativeOverlay(home, runhome string) (bool, error)
- type Driver
- func (d *Driver) AdditionalImageStores() []string
- func (d *Driver) ApplyDiff(id, parent string, options graphdriver.ApplyDiffOpts) (size int64, err error)
- func (d *Driver) ApplyDiffFromStagingDirectory(id, parent, stagingDirectory string, ...) error
- func (d *Driver) ApplyDiffWithDiffer(id, parent string, options *graphdriver.ApplyDiffOpts, ...) (output graphdriver.DriverWithDifferOutput, err error)
- func (d *Driver) Changes(id string, idMappings *idtools.IDMappings, parent string, ...) ([]archive.Change, error)
- func (d *Driver) Cleanup() error
- func (d *Driver) CleanupStagingDirectory(stagingDirectory string) error
- func (d *Driver) Create(id, parent string, opts *graphdriver.CreateOpts) (retErr error)
- func (d *Driver) CreateFromTemplate(id, template string, templateIDMappings *idtools.IDMappings, parent string, ...) error
- func (d *Driver) CreateReadWrite(id, parent string, opts *graphdriver.CreateOpts) error
- func (d *Driver) Diff(id string, idMappings *idtools.IDMappings, parent string, ...) (io.ReadCloser, error)
- func (d *Driver) DiffGetter(id string) (graphdriver.FileGetCloser, error)
- func (d *Driver) DiffSize(id string, idMappings *idtools.IDMappings, parent string, ...) (size int64, err error)
- func (d *Driver) DifferTarget(id string) (string, error)
- func (d *Driver) Exists(id string) bool
- func (d *Driver) Get(id string, options graphdriver.MountOpts) (string, error)
- func (d *Driver) ListLayers() ([]string, error)
- func (d *Driver) LookupAdditionalLayer(dgst digest.Digest, ref string) (graphdriver.AdditionalLayer, error)
- func (d *Driver) LookupAdditionalLayerByID(id string) (graphdriver.AdditionalLayer, error)
- func (d *Driver) Metadata(id string) (map[string]string, error)
- func (d *Driver) Put(id string) error
- func (d *Driver) ReadWriteDiskUsage(id string) (*directory.DiskUsage, error)
- func (d *Driver) Remove(id string) error
- func (d *Driver) Status() [][2]string
- func (d *Driver) String() string
- func (d *Driver) SupportsShifting() bool
- func (d *Driver) UpdateLayerIDMap(id string, toContainer, toHost *idtools.IDMappings, mountLabel string) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Init ¶
func Init(home string, options graphdriver.Options) (graphdriver.Driver, error)
Init returns the a native diff driver for overlay filesystem. If overlay filesystem is not supported on the host, a wrapped graphdriver.ErrNotSupported is returned as error. If an overlay filesystem is not supported over an existing filesystem then a wrapped graphdriver.ErrIncompatibleFS is returned.
func SupportsNativeOverlay ¶ added in v0.46.1
Types ¶
type Driver ¶
type Driver struct {
// contains filtered or unexported fields
}
Driver contains information about the home directory and the list of active mounts that are created using this driver.
func (*Driver) AdditionalImageStores ¶
AdditionalImageStores returns additional image stores supported by the driver
func (*Driver) ApplyDiff ¶
func (d *Driver) ApplyDiff(id, parent string, options graphdriver.ApplyDiffOpts) (size int64, err error)
ApplyDiff applies the new layer into a root
func (*Driver) ApplyDiffFromStagingDirectory ¶ added in v0.46.1
func (d *Driver) ApplyDiffFromStagingDirectory(id, parent, stagingDirectory string, diffOutput *graphdriver.DriverWithDifferOutput, options *graphdriver.ApplyDiffOpts) error
ApplyDiffFromStagingDirectory applies the changes using the specified staging directory.
func (*Driver) ApplyDiffWithDiffer ¶ added in v0.46.1
func (d *Driver) ApplyDiffWithDiffer(id, parent string, options *graphdriver.ApplyDiffOpts, differ graphdriver.Differ) (output graphdriver.DriverWithDifferOutput, err error)
ApplyDiff applies the changes in the new layer using the specified function
func (*Driver) Changes ¶
func (d *Driver) Changes(id string, idMappings *idtools.IDMappings, parent string, parentMappings *idtools.IDMappings, mountLabel string) ([]archive.Change, error)
Changes produces a list of changes between the specified layer and its parent layer. If parent is "", then all changes will be ADD changes.
func (*Driver) Cleanup ¶
Cleanup any state created by overlay which should be cleaned when daemon is being shutdown. For now, we just have to unmount the bind mounted we had created.
func (*Driver) CleanupStagingDirectory ¶ added in v0.46.1
CleanupStagingDirectory cleanups the staging directory.
func (*Driver) Create ¶
func (d *Driver) Create(id, parent string, opts *graphdriver.CreateOpts) (retErr error)
Create is used to create the upper, lower, and merge directories required for overlay fs for a given id. The parent filesystem is used to configure these directories for the overlay.
func (*Driver) CreateFromTemplate ¶
func (d *Driver) CreateFromTemplate(id, template string, templateIDMappings *idtools.IDMappings, parent string, parentIDMappings *idtools.IDMappings, opts *graphdriver.CreateOpts, readWrite bool) error
CreateFromTemplate creates a layer with the same contents and parent as another layer.
func (*Driver) CreateReadWrite ¶
func (d *Driver) CreateReadWrite(id, parent string, opts *graphdriver.CreateOpts) error
CreateReadWrite creates a layer that is writable for use as a container file system.
func (*Driver) Diff ¶
func (d *Driver) Diff(id string, idMappings *idtools.IDMappings, parent string, parentMappings *idtools.IDMappings, mountLabel string) (io.ReadCloser, error)
Diff produces an archive of the changes between the specified layer and its parent layer which may be "".
func (*Driver) DiffGetter ¶
func (d *Driver) DiffGetter(id string) (graphdriver.FileGetCloser, error)
DiffGetter returns a FileGetCloser that can read files from the directory that contains files for the layer differences, either for this layer, or one of our lowers if we're just a template directory. Used for direct access for tar-split.
func (*Driver) DiffSize ¶
func (d *Driver) DiffSize(id string, idMappings *idtools.IDMappings, parent string, parentMappings *idtools.IDMappings, mountLabel string) (size int64, err error)
DiffSize calculates the changes between the specified id and its parent and returns the size in bytes of the changes relative to its base filesystem directory.
func (*Driver) DifferTarget ¶ added in v0.46.1
DifferTarget gets the location where files are stored for the layer.
func (*Driver) Get ¶
Get creates and mounts the required file system for the given id and returns the mount path.
func (*Driver) ListLayers ¶ added in v0.46.1
List layers (not including additional image stores)
func (*Driver) LookupAdditionalLayer ¶ added in v0.46.1
func (d *Driver) LookupAdditionalLayer(dgst digest.Digest, ref string) (graphdriver.AdditionalLayer, error)
LookupAdditionalLayer looks up additional layer store by the specified digest and ref and returns an object representing that layer. This API is experimental and can be changed without bumping the major version number. TODO: to remove the comment once it's no longer experimental.
func (*Driver) LookupAdditionalLayerByID ¶ added in v0.46.1
func (d *Driver) LookupAdditionalLayerByID(id string) (graphdriver.AdditionalLayer, error)
LookupAdditionalLayerByID looks up additional layer store by the specified ID and returns an object representing that layer. This API is experimental and can be changed without bumping the major version number. TODO: to remove the comment once it's no longer experimental.
func (*Driver) Metadata ¶
Metadata returns meta data about the overlay driver such as LowerDir, UpperDir, WorkDir and MergeDir used to store data.
func (*Driver) ReadWriteDiskUsage ¶ added in v0.46.1
ReadWriteDiskUsage returns the disk usage of the writable directory for the ID. For Overlay, it attempts to check the XFS quota for size, and falls back to finding the size of the "diff" directory.
func (*Driver) Status ¶
Status returns current driver information in a two dimensional string array. Output contains "Backing Filesystem" used in this implementation.
func (*Driver) SupportsShifting ¶
SupportsShifting tells whether the driver support shifting of the UIDs/GIDs in an userNS
func (*Driver) UpdateLayerIDMap ¶
func (d *Driver) UpdateLayerIDMap(id string, toContainer, toHost *idtools.IDMappings, mountLabel string) error
UpdateLayerIDMap updates ID mappings in a from matching the ones specified by toContainer to those specified by toHost.