Documentation ¶
Index ¶
- Constants
- func GetPropagation(mode string) string
- func HasPropagation(mode string) bool
- func IsVolumeNameValid(name string) (bool, error)
- func ParseVolumesFrom(spec string) (string, string, error)
- func ReadWrite(mode string) bool
- func ValidMountMode(mode string) bool
- type Driver
- type MountPoint
- type Volume
Constants ¶
const ( // RXHostDir is the first option of a source RXHostDir = `[a-z]:\\(?:[^\\/:*?"<>|\r\n]+\\?)*` // RXName is the second option of a source RXName = `[^\\/:*?"<>|\r\n]+` // RXReservedNames are reserved names not possible on Windows RXReservedNames = `(con)|(prn)|(nul)|(aux)|(com[1-9])|(lpt[1-9])` // RXSource is the combined possibilities for a source RXSource = `((?P<source>((` + RXHostDir + `)|(` + RXName + `))):)?` // RXDestination is the regex expression for the mount destination RXDestination = `(?P<destination>([a-z]):((?:\\[^\\/:*?"<>\r\n]+)*\\?))` // RXMode is the regex expression for the mode of the mount RXMode = `(:(?P<mode>(?i)rw))?` )
const DefaultDriverName string = "local"
DefaultDriverName is the driver name used for the driver implemented in the local package.
const DefaultPropagationMode string = ""
DefaultPropagationMode is used only in linux. In other cases it returns empty string.
Variables ¶
This section is empty.
Functions ¶
func GetPropagation ¶ added in v1.10.0
GetPropagation is not supported. Return empty string.
func HasPropagation ¶ added in v1.10.0
HasPropagation checks if there is a valid propagation mode present in passed string. Returns true if a valid propagatio mode specifier is present, false otherwise.
func IsVolumeNameValid ¶ added in v1.10.0
IsVolumeNameValid checks a volume name in a platform specific manner.
func ParseVolumesFrom ¶ added in v1.10.0
ParseVolumesFrom ensure that the supplied volumes-from is valid.
func ReadWrite ¶ added in v1.8.0
ReadWrite tells you if a mode string is a valid read-write mode or not.
func ValidMountMode ¶ added in v1.9.0
ValidMountMode will make sure the mount mode is valid. returns if it's a valid mount mode or not.
Types ¶
type Driver ¶
type Driver interface { // Name returns the name of the volume driver. Name() string // Create makes a new volume with the given id. Create(name string, opts map[string]string) (Volume, error) // Remove deletes the volume. Remove(vol Volume) (err error) // List lists all the volumes the driver has List() ([]Volume, error) // Get retreives the volume with the requested name Get(name string) (Volume, error) }
Driver is for creating and removing volumes.
type MountPoint ¶ added in v1.10.0
type MountPoint struct { Source string // Container host directory Destination string // Inside the container RW bool // True if writable Name string // Name set by user Driver string // Volume driver to use Volume Volume `json:"-"` // Note Mode is not used on Windows Mode string `json:"Relabel"` // Originally field was `Relabel`" // Note Propagation is not used on Windows Propagation string // Mount propagation string Named bool // specifies if the mountpoint was specified by name }
MountPoint is the intersection point between a volume and a container. It specifies which volume is to be used and where inside a container it should be mounted.
func ParseMountSpec ¶ added in v1.10.0
func ParseMountSpec(spec string, volumeDriver string) (*MountPoint, error)
ParseMountSpec validates the configuration of mount information is valid.
func (*MountPoint) BackwardsCompatible ¶ added in v1.10.0
func (m *MountPoint) BackwardsCompatible() bool
BackwardsCompatible decides whether this mount point can be used in old versions of Docker or not. Windows volumes are never backwards compatible.
func (*MountPoint) Path ¶ added in v1.10.0
func (m *MountPoint) Path() string
Path returns the path of a volume in a mount point.
func (*MountPoint) Setup ¶ added in v1.10.0
func (m *MountPoint) Setup() (string, error)
Setup sets up a mount point by either mounting the volume if it is configured, or creating the source directory if supplied.
type Volume ¶
type Volume interface { // Name returns the name of the volume Name() string // DriverName returns the name of the driver which owns this volume. DriverName() string // Path returns the absolute path to the volume. Path() string // Mount mounts the volume and returns the absolute path to // where it can be consumed. Mount() (string, error) // Unmount unmounts the volume when it is no longer in use. Unmount() error }
Volume is a place to store data. It is backed by a specific driver, and can be mounted.