Documentation ¶
Index ¶
- Constants
- Variables
- func ConvertKVStringsToMap(values []string) map[string]string
- func ConvertKVStringsToMapWithNil(values []string) map[string]*string
- func ParseCPUs(value string) (int64, error)
- func ParseEnvFile(filename string) ([]string, error)
- func ParseHost(defaultToTLS bool, val string) (string, error)
- func ParseLink(val string) (string, string, error)
- func ParseRestartPolicy(policy string) (container.RestartPolicy, error)
- func ParseTCPAddr(tryAddr string, defaultAddr string) (string, error)
- func ReadKVStrings(files []string, override []string) ([]string, error)
- func ValidateDNSSearch(val string) (string, error)
- func ValidateEnv(val string) (string, error)
- func ValidateExtraHost(val string) (string, error)
- func ValidateHost(val string) (string, error)
- func ValidateIPAddress(val string) (string, error)
- func ValidateLabel(val string) (string, error)
- func ValidateLink(val string) (string, error)
- func ValidateMACAddress(val string) (string, error)
- func ValidateSysctl(val string) (string, error)
- type ErrBadEnvVariable
- type FilterOpt
- type ListOpts
- func (opts *ListOpts) Delete(key string)
- func (opts *ListOpts) Get(key string) bool
- func (opts *ListOpts) GetAll() []string
- func (opts *ListOpts) GetAllOrEmpty() []string
- func (opts *ListOpts) GetMap() map[string]struct{}
- func (opts *ListOpts) Len() int
- func (opts *ListOpts) Set(value string) error
- func (opts *ListOpts) String() string
- func (opts *ListOpts) Type() string
- func (opts *ListOpts) WithValidator(validator ValidatorFctType) *ListOpts
- type MapOpts
- type MemBytes
- type MemSwapBytes
- type NamedListOpts
- type NamedMapOpts
- type NamedOption
- type NanoCPUs
- type ValidatorFctListType
- type ValidatorFctType
Constants ¶
const DefaultHTTPHost = "localhost"
DefaultHTTPHost Default HTTP Host used if only port is provided to -H flag e.g. dockerd -H tcp://:8080
Variables ¶
var ( // DefaultHTTPPort Default HTTP Port used if only the protocol is provided to -H flag e.g. dockerd -H tcp:// // These are the IANA registered port numbers for use with Docker // see http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml?search=docker DefaultHTTPPort = 2375 // Default HTTP Port // DefaultTLSHTTPPort Default HTTP Port used when TLS enabled DefaultTLSHTTPPort = 2376 // Default TLS encrypted HTTP Port // DefaultUnixSocket Path for the unix socket. // Docker daemon by default always listens on the default unix socket DefaultUnixSocket = "/var/run/docker.sock" // DefaultTCPHost constant defines the default host string used by docker on Windows DefaultTCPHost = fmt.Sprintf("tcp://%s:%d", DefaultHTTPHost, DefaultHTTPPort) // DefaultTLSHost constant defines the default host string used by docker for TLS sockets DefaultTLSHost = fmt.Sprintf("tcp://%s:%d", DefaultHTTPHost, DefaultTLSHTTPPort) // DefaultNamedPipe defines the default named pipe used by docker on Windows DefaultNamedPipe = `//./pipe/docker_engine` )
var DefaultHost = fmt.Sprintf("unix://%s", DefaultUnixSocket)
DefaultHost constant defines the default host string used by docker on other hosts than Windows
Functions ¶
func ConvertKVStringsToMap ¶
ConvertKVStringsToMap converts ["key=value"] to {"key":"value"}
func ConvertKVStringsToMapWithNil ¶
ConvertKVStringsToMapWithNil converts ["key=value"] to {"key":"value"} but set unset keys to nil - meaning the ones with no "=" in them. We use this in cases where we need to distinguish between
FOO= and FOO
where the latter case just means FOO was mentioned but not given a value
func ParseEnvFile ¶
ParseEnvFile reads a file with environment variables enumerated by lines
“Environment variable names used by the utilities in the Shell and Utilities volume of IEEE Std 1003.1-2001 consist solely of uppercase letters, digits, and the '_' (underscore) from the characters defined in Portable Character Set and do not begin with a digit. *But*, other characters may be permitted by an implementation; applications shall tolerate the presence of such names.” -- http://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap08.html
As of #16585, it's up to application inside docker to validate or not environment variables, that's why we just strip leading whitespace and nothing more.
func ParseRestartPolicy ¶
func ParseRestartPolicy(policy string) (container.RestartPolicy, error)
ParseRestartPolicy returns the parsed policy or an error indicating what is incorrect
func ParseTCPAddr ¶
ParseTCPAddr parses and validates that the specified address is a valid TCP address. It returns a formatted TCP address, either using the address parsed from tryAddr, or the contents of defaultAddr if tryAddr is a blank string. tryAddr is expected to have already been Trim()'d defaultAddr must be in the full `tcp://host:port` form
func ReadKVStrings ¶
ReadKVStrings reads a file of line terminated key=value pairs, and overrides any keys present in the file with additional pairs specified in the override parameter
func ValidateDNSSearch ¶
ValidateDNSSearch validates domain for resolvconf search configuration. A zero length domain is represented by a dot (.).
func ValidateEnv ¶
ValidateEnv validates an environment variable and returns it. If no value is specified, it returns the current value using os.Getenv.
As on ParseEnvFile and related to #16585, environment variable names are not validate what so ever, it's up to application inside docker to validate them or not.
The only validation here is to check if name is empty, per #25099
func ValidateExtraHost ¶
ValidateExtraHost validates that the specified string is a valid extrahost and returns it. ExtraHost is in the form of name:ip where the ip has to be a valid ip (IPv4 or IPv6).
func ValidateHost ¶
ValidateHost validates that the specified string is a valid host and returns it.
func ValidateIPAddress ¶
ValidateIPAddress validates an Ip address.
func ValidateLabel ¶
ValidateLabel validates that the specified string is a valid label, and returns it. Labels are in the form on key=value.
func ValidateLink ¶
ValidateLink validates that the specified string has a valid link format (containerName:alias).
func ValidateMACAddress ¶
ValidateMACAddress validates a MAC address.
func ValidateSysctl ¶
ValidateSysctl validates a sysctl and returns it.
Types ¶
type ErrBadEnvVariable ¶
type ErrBadEnvVariable struct {
// contains filtered or unexported fields
}
ErrBadEnvVariable typed error for bad environment variable
func (ErrBadEnvVariable) Error ¶
func (e ErrBadEnvVariable) Error() string
type FilterOpt ¶
type FilterOpt struct {
// contains filtered or unexported fields
}
FilterOpt is a flag type for validating filters
type ListOpts ¶
type ListOpts struct {
// contains filtered or unexported fields
}
ListOpts holds a list of values and a validation function.
func NewListOpts ¶
func NewListOpts(validator ValidatorFctType) ListOpts
NewListOpts creates a new ListOpts with the specified validator.
func NewListOptsRef ¶
func NewListOptsRef(values *[]string, validator ValidatorFctType) *ListOpts
NewListOptsRef creates a new ListOpts with the specified values and validator.
func (*ListOpts) GetAllOrEmpty ¶
GetAllOrEmpty returns the values of the slice or an empty slice when there are no values.
func (*ListOpts) GetMap ¶
GetMap returns the content of values in a map in order to avoid duplicates.
func (*ListOpts) WithValidator ¶
func (opts *ListOpts) WithValidator(validator ValidatorFctType) *ListOpts
WithValidator returns the ListOpts with validator set.
type MapOpts ¶
type MapOpts struct {
// contains filtered or unexported fields
}
MapOpts holds a map of values and a validation function.
func NewMapOpts ¶
func NewMapOpts(values map[string]string, validator ValidatorFctType) *MapOpts
NewMapOpts creates a new MapOpts with the specified map of values and a validator.
type MemBytes ¶
type MemBytes int64
MemBytes is a type for human readable memory bytes (like 128M, 2g, etc)
func (*MemBytes) UnmarshalJSON ¶
UnmarshalJSON is the customized unmarshaler for MemBytes
type MemSwapBytes ¶
type MemSwapBytes int64
MemSwapBytes is a type for human readable memory bytes (like 128M, 2g, etc). It differs from MemBytes in that -1 is valid and the default.
func (*MemSwapBytes) Set ¶
func (m *MemSwapBytes) Set(value string) error
Set sets the value of the MemSwapBytes by passing a string
func (*MemSwapBytes) String ¶
func (m *MemSwapBytes) String() string
func (*MemSwapBytes) UnmarshalJSON ¶
func (m *MemSwapBytes) UnmarshalJSON(s []byte) error
UnmarshalJSON is the customized unmarshaler for MemSwapBytes
type NamedListOpts ¶
type NamedListOpts struct { ListOpts // contains filtered or unexported fields }
NamedListOpts is a ListOpts with a configuration name. This struct is useful to keep reference to the assigned field name in the internal configuration struct.
func NewNamedListOptsRef ¶
func NewNamedListOptsRef(name string, values *[]string, validator ValidatorFctType) *NamedListOpts
NewNamedListOptsRef creates a reference to a new NamedListOpts struct.
func (*NamedListOpts) Name ¶
func (o *NamedListOpts) Name() string
Name returns the name of the NamedListOpts in the configuration.
type NamedMapOpts ¶
type NamedMapOpts struct { MapOpts // contains filtered or unexported fields }
NamedMapOpts is a MapOpts struct with a configuration name. This struct is useful to keep reference to the assigned field name in the internal configuration struct.
func NewNamedMapOpts ¶
func NewNamedMapOpts(name string, values map[string]string, validator ValidatorFctType) *NamedMapOpts
NewNamedMapOpts creates a reference to a new NamedMapOpts struct.
func (*NamedMapOpts) Name ¶
func (o *NamedMapOpts) Name() string
Name returns the name of the NamedMapOpts in the configuration.
type NamedOption ¶
type NamedOption interface {
Name() string
}
NamedOption is an interface that list and map options with names implement.
type NanoCPUs ¶
type NanoCPUs int64
NanoCPUs is a type for fixed point fractional number.
type ValidatorFctListType ¶
ValidatorFctListType defines a validator function that returns a validated list of string and/or an error
type ValidatorFctType ¶
ValidatorFctType defines a validator function that returns a validated string and/or an error.