19a04efa2f
Commit 08e4e88482
(Docker Engine v25.0.0)
deprecated API version v1.23 and lower, but older API versions could be
enabled through the DOCKER_MIN_API_VERSION environment variable.
This patch removes all support for API versions < v1.24.
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
76 lines
2.3 KiB
Go
76 lines
2.3 KiB
Go
package config // import "github.com/docker/docker/daemon/config"
|
|
|
|
import (
|
|
"context"
|
|
"os"
|
|
"path/filepath"
|
|
|
|
"github.com/containerd/log"
|
|
)
|
|
|
|
const (
|
|
// StockRuntimeName is used by the 'default-runtime' flag in dockerd as the
|
|
// default value. On Windows keep this empty so the value is auto-detected
|
|
// based on other options.
|
|
StockRuntimeName = ""
|
|
)
|
|
|
|
// BridgeConfig is meant to store all the parameters for both the bridge driver and the default bridge network. On
|
|
// Windows: 1. "bridge" in this context reference the nat driver and the default nat network; 2. the nat driver has no
|
|
// specific parameters, so this struct effectively just stores parameters for the default nat network.
|
|
type BridgeConfig struct {
|
|
DefaultBridgeConfig
|
|
}
|
|
|
|
type DefaultBridgeConfig struct {
|
|
commonBridgeConfig
|
|
|
|
// MTU is not actually used on Windows, but the --mtu option has always
|
|
// been there on Windows (but ignored).
|
|
MTU int `json:"mtu,omitempty"`
|
|
}
|
|
|
|
// Config defines the configuration of a docker daemon.
|
|
// It includes json tags to deserialize configuration from a file
|
|
// using the same names that the flags in the command line uses.
|
|
type Config struct {
|
|
CommonConfig
|
|
|
|
// Fields below here are platform specific. (There are none presently
|
|
// for the Windows daemon.)
|
|
}
|
|
|
|
// GetExecRoot returns the user configured Exec-root
|
|
func (conf *Config) GetExecRoot() string {
|
|
return ""
|
|
}
|
|
|
|
// GetInitPath returns the configured docker-init path
|
|
func (conf *Config) GetInitPath() string {
|
|
return ""
|
|
}
|
|
|
|
// IsSwarmCompatible defines if swarm mode can be enabled in this config
|
|
func (conf *Config) IsSwarmCompatible() error {
|
|
return nil
|
|
}
|
|
|
|
// ValidatePlatformConfig checks if any platform-specific configuration settings are invalid.
|
|
func (conf *Config) ValidatePlatformConfig() error {
|
|
if conf.MTU != 0 && conf.MTU != DefaultNetworkMtu {
|
|
log.G(context.TODO()).Warn(`WARNING: MTU for the default network is not configurable on Windows, and this option will be ignored.`)
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// IsRootless returns conf.Rootless on Linux but false on Windows
|
|
func (conf *Config) IsRootless() bool {
|
|
return false
|
|
}
|
|
|
|
func setPlatformDefaults(cfg *Config) error {
|
|
cfg.Root = filepath.Join(os.Getenv("programdata"), "docker")
|
|
cfg.ExecRoot = filepath.Join(os.Getenv("programdata"), "docker", "exec-root")
|
|
cfg.Pidfile = filepath.Join(cfg.Root, "docker.pid")
|
|
return nil
|
|
}
|