Documentation
¶
Overview ¶
Package dockercompat mimics `docker inspect` objects.
Index ¶
- type ClientVersion
- type ComponentVersion
- type Config
- type Container
- type ContainerState
- type DefaultNetworkSettings
- type IPAM
- type IPAMConfig
- type Image
- type ImageMetadata
- type Info
- type MountPoint
- type Network
- type NetworkEndpointSettings
- type NetworkSettings
- type PluginsInfo
- type RootFS
- type ServerVersion
- type VersionInfo
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ClientVersion ¶ added in v0.11.1
type ClientVersion struct {
Version string
GitCommit string
GoVersion string
Os string // GOOS
Arch string // GOARCH
Components []ComponentVersion // nerdctl extension
}
ClientVersion is from https://github.com/docker/cli/blob/v20.10.8/cli/command/system/version.go#L74-L87
type ComponentVersion ¶ added in v0.11.1
type ComponentVersion struct {
Name string
Version string
Details map[string]string `json:",omitempty"`
}
ComponentVersion describes the version information for a specific component. From https://github.com/moby/moby/blob/v20.10.8/api/types/types.go#L112-L117
type Config ¶ added in v0.9.0
type Config struct {
Hostname string `json:",omitempty"` // Hostname
// TODO: Domainname string // Domainname
User string `json:",omitempty"` // User that will run the command(s) inside the container, also support user:group
AttachStdin bool // Attach the standard input, makes possible user interaction
// TODO: AttachStdout bool // Attach the standard output
// TODO: AttachStderr bool // Attach the standard error
ExposedPorts nat.PortSet `json:",omitempty"` // List of exposed ports
// TODO: Tty bool // Attach standard streams to a tty, including stdin if it is not closed.
// TODO: OpenStdin bool // Open stdin
// TODO: StdinOnce bool // If true, close stdin after the 1 attached client disconnects.
Env []string `json:",omitempty"` // List of environment variable to set in the container
Cmd []string `json:",omitempty"` // Command to run when starting the container
// TODO Healthcheck *HealthConfig `json:",omitempty"` // Healthcheck describes how to check the container is healthy
// TODO: ArgsEscaped bool `json:",omitempty"` // True if command is already escaped (meaning treat as a command line) (Windows specific).
// TODO: Image string // Name of the image as it was passed by the operator (e.g. could be symbolic)
Volumes map[string]struct{} `json:",omitempty"` // List of volumes (mounts) used for the container
WorkingDir string `json:",omitempty"` // Current directory (PWD) in the command will be launched
Entrypoint []string `json:",omitempty"` // Entrypoint to run when starting the container
// TODO: NetworkDisabled bool `json:",omitempty"` // Is network disabled
// TODO: MacAddress string `json:",omitempty"` // Mac Address of the container
// TODO: OnBuild []string // ONBUILD metadata that were defined on the image Dockerfile
Labels map[string]string `json:",omitempty"` // List of labels set to this container
}
config is from https://github.com/moby/moby/blob/8dbd90ec00daa26dc45d7da2431c965dec99e8b4/api/types/container/config.go#L37-L69
type Container ¶
type Container struct {
ID string `json:"Id"`
Created string
Path string
Args []string
State *ContainerState
Image string
ResolvConfPath string
HostnamePath string
// TODO: HostsPath string
LogPath string
// Unimplemented: Node *ContainerNode `json:",omitempty"` // Node is only propagated by Docker Swarm standalone API
Name string
RestartCount int
Driver string
Platform string
// TODO: MountLabel string
// TODO: ProcessLabel string
AppArmorProfile string
Mounts []MountPoint
Config *Config
NetworkSettings *NetworkSettings
}
Container mimics a `docker container inspect` object. From https://github.com/moby/moby/blob/v20.10.1/api/types/types.go#L340-L374
type ContainerState ¶
type ContainerState struct {
Status string // String representation of the container state. Can be one of "created", "running", "paused", "restarting", "removing", "exited", or "dead"
Running bool
Paused bool
Restarting bool
// TODO: OOMKilled bool
// TODO: Dead bool
Pid int
ExitCode int
Error string
// TODO: StartedAt string
FinishedAt string
}
ContainerState is from https://github.com/moby/moby/blob/v20.10.1/api/types/types.go#L313-L326
type DefaultNetworkSettings ¶
type DefaultNetworkSettings struct {
// TODO EndpointID string // EndpointID uniquely represents a service endpoint in a Sandbox
// TODO Gateway string // Gateway holds the gateway address for the network
GlobalIPv6Address string // GlobalIPv6Address holds network's global IPv6 address
GlobalIPv6PrefixLen int // GlobalIPv6PrefixLen represents mask length of network's global IPv6 address
IPAddress string // IPAddress holds the IPv4 address for the network
IPPrefixLen int // IPPrefixLen represents mask length of network's IPv4 address
// TODO IPv6Gateway string // IPv6Gateway holds gateway address specific for IPv6
MacAddress string // MacAddress holds the MAC address for the network
}
DefaultNetworkSettings is from https://github.com/moby/moby/blob/v20.10.1/api/types/types.go#L405-L414
type IPAM ¶ added in v0.11.0
type IPAM struct {
// Driver is omitted
Config []IPAMConfig `json:"Config,omitempty"`
}
type IPAMConfig ¶ added in v0.11.0
type Image ¶ added in v0.9.0
type Image struct {
ID string `json:"Id"`
RepoTags []string
RepoDigests []string
// TODO: Parent string
Comment string
Created string
// TODO: Container string
// TODO: ContainerConfig *container.Config
// TODO: DockerVersion string
Author string
Config *Config
Architecture string
// TODO: Variant string `json:",omitempty"`
Os string
// TODO: OsVersion string `json:",omitempty"`
Size int64 // Size is the unpacked size of the image
// TODO: GraphDriver GraphDriverData
RootFS RootFS
Metadata ImageMetadata
}
Image mimics a `docker image inspect` object. From https://github.com/moby/moby/blob/v20.10.1/api/types/types.go#L340-L374
type ImageMetadata ¶ added in v0.9.0
type Info ¶ added in v0.7.3
type Info struct {
ID string
Driver string
Plugins PluginsInfo
MemoryLimit bool
SwapLimit bool
// KernelMemory is omitted because it is deprecated in the Moby
CPUCfsPeriod bool `json:"CpuCfsPeriod"`
CPUCfsQuota bool `json:"CpuCfsQuota"`
CPUSet bool
PidsLimit bool
IPv4Forwarding bool
BridgeNfIptables bool
BridgeNfIP6tables bool `json:"BridgeNfIp6tables"`
// Nfd is omitted because it does not make sense for nerdctl
OomKillDisable bool
// NGoroutines is omitted because it does not make sense for nerdctl
SystemTime string
LoggingDriver string
CgroupDriver string
CgroupVersion string `json:",omitempty"`
// NEventsListener is omitted because it does not make sense for nerdctl
KernelVersion string
OperatingSystem string
OSType string
Architecture string // e.g., "x86_64", not "amd64" (Corresponds to Docker)
NCPU int
MemTotal int64
Name string
ServerVersion string
SecurityOptions []string
Warnings []string
}
Info mimics a `docker info` object. From https://github.com/moby/moby/blob/v20.10.8/api/types/types.go#L146-L216
type MountPoint ¶ added in v0.19.0
type MountPoint struct {
Type string `json:",omitempty"`
Name string `json:",omitempty"`
Source string
Destination string
Driver string `json:",omitempty"`
Mode string
RW bool
Propagation string
}
From https://github.com/moby/moby/blob/v20.10.1/api/types/types.go#L416-L427 MountPoint represents a mount point configuration inside the container. This is used for reporting the mountpoints in use by a container.
type Network ¶ added in v0.11.0
type Network struct {
Name string `json:"Name"`
ID string `json:"Id,omitempty"` // optional in nerdctl
IPAM IPAM `json:"IPAM,omitempty"`
Labels map[string]string `json:"Labels"`
}
Network mimics a `docker network inspect` object. From https://github.com/moby/moby/blob/v20.10.7/api/types/types.go#L430-L448
type NetworkEndpointSettings ¶
type NetworkEndpointSettings struct {
// Configurations
// TODO IPAMConfig *EndpointIPAMConfig
// TODO Links []string
// TODO Aliases []string
// Operational data
// TODO NetworkID string
// TODO EndpointID string
// TODO Gateway string
IPAddress string
IPPrefixLen int
// TODO IPv6Gateway string
GlobalIPv6Address string
GlobalIPv6PrefixLen int
MacAddress string
}
NetworkEndpointSettings is from https://github.com/moby/moby/blob/v20.10.1/api/types/network/network.go#L49-L65
type NetworkSettings ¶
type NetworkSettings struct {
Ports *nat.PortMap `json:",omitempty"`
DefaultNetworkSettings
Networks map[string]*NetworkEndpointSettings
}
type PluginsInfo ¶ added in v0.7.3
type ServerVersion ¶ added in v0.11.1
type ServerVersion struct {
Components []ComponentVersion
}
ServerVersion is from https://github.com/moby/moby/blob/v20.10.8/api/types/types.go#L119-L137
type VersionInfo ¶ added in v0.11.1
type VersionInfo struct {
Client ClientVersion
Server *ServerVersion
}
VersionInfo mimics a `docker version` object. From https://github.com/docker/cli/blob/v20.10.8/cli/command/system/version.go#L68-L72