Documentation ¶
Index ¶
- Constants
- Variables
- func Init(root string, options []string) (graphdriver.Driver, error)
- func Unmount(target string) error
- type Driver
- func (a *Driver) ApplyDiff(id string, diff archive.ArchiveReader) error
- func (a *Driver) Changes(id string) ([]archive.Change, error)
- func (a *Driver) Cleanup() error
- func (a *Driver) Create(id, parent string) error
- func (a *Driver) Diff(id string) (archive.Archive, error)
- func (a *Driver) DiffSize(id string) (int64, error)
- func (a Driver) Exists(id string) bool
- func (a *Driver) Get(id, mountLabel string) (string, error)
- func (a *Driver) Migrate(pth string, setupInit func(p string) error) error
- func (a *Driver) Put(id string)
- func (a *Driver) Remove(id string) error
- func (a Driver) Status() [][2]string
- func (Driver) String() string
Constants ¶
View Source
const MsRemount = syscall.MS_REMOUNT
Variables ¶
View Source
var (
ErrAufsNotSupported = fmt.Errorf("AUFS was not found in /proc/filesystems")
)
Functions ¶
Types ¶
type Driver ¶
type Driver struct { sync.Mutex // Protects concurrent modification to active // contains filtered or unexported fields }
func (*Driver) Migrate ¶
Migrate existing images and containers from docker < 0.7.x
The format pre 0.7 is for docker to store the metadata and filesystem content in the same directory. For the migration to work we need to move Image layer data from /var/lib/docker/graph/<id>/layers to the diff of the registered id.
Next we need to migrate the container's rw layer to diff of the driver. After the contents are migrated we need to register the image and container ids with the driver.
For the migration we try to move the folder containing the layer files, if that fails because the data is currently mounted we will fallback to creating a symlink.
Click to show internal directories.
Click to hide internal directories.