12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- // +build solaris linux freebsd
- package config
- import (
- "net"
- "github.com/docker/docker/api/types"
- )
- // CommonUnixConfig defines configuration of a docker daemon that is
- // common across Unix platforms.
- type CommonUnixConfig struct {
- ExecRoot string `json:"exec-root,omitempty"`
- ContainerdAddr string `json:"containerd,omitempty"`
- Runtimes map[string]types.Runtime `json:"runtimes,omitempty"`
- DefaultRuntime string `json:"default-runtime,omitempty"`
- DefaultInitBinary string `json:"default-init,omitempty"`
- }
- type commonUnixBridgeConfig struct {
- DefaultIP net.IP `json:"ip,omitempty"`
- IP string `json:"bip,omitempty"`
- DefaultGatewayIPv4 net.IP `json:"default-gateway,omitempty"`
- DefaultGatewayIPv6 net.IP `json:"default-gateway-v6,omitempty"`
- InterContainerCommunication bool `json:"icc,omitempty"`
- }
- // GetRuntime returns the runtime path and arguments for a given
- // runtime name
- func (conf *Config) GetRuntime(name string) *types.Runtime {
- conf.Lock()
- defer conf.Unlock()
- if rt, ok := conf.Runtimes[name]; ok {
- return &rt
- }
- return nil
- }
- // GetDefaultRuntimeName returns the current default runtime
- func (conf *Config) GetDefaultRuntimeName() string {
- conf.Lock()
- rt := conf.DefaultRuntime
- conf.Unlock()
- return rt
- }
- // GetAllRuntimes returns a copy of the runtimes map
- func (conf *Config) GetAllRuntimes() map[string]types.Runtime {
- conf.Lock()
- rts := conf.Runtimes
- conf.Unlock()
- return rts
- }
- // GetExecRoot returns the user configured Exec-root
- func (conf *Config) GetExecRoot() string {
- return conf.ExecRoot
- }
- // GetInitPath returns the configure docker-init path
- func (conf *Config) GetInitPath() string {
- conf.Lock()
- defer conf.Unlock()
- if conf.InitPath != "" {
- return conf.InitPath
- }
- if conf.DefaultInitBinary != "" {
- return conf.DefaultInitBinary
- }
- return DefaultInitBinary
- }
|