Documentation
¶
Index ¶
- Constants
- func Register(f SetupFunc)
- type AttachConfig
- type Container
- func (c *Container) Config() *types.ContainerConfig
- func (c *Container) ID() string
- func (c *Container) Image() string
- func (c *Container) IsCreated() bool
- func (c *Container) IsPaused() bool
- func (c *Container) IsRunning() bool
- func (c *Container) IsStopped() bool
- func (c *Container) Key() string
- func (c *Container) Name() string
- func (c *Container) StopTimeout() int64
- func (c *Container) Write(store *meta.Store) error
- type ContainerFilter
- type ContainerListOption
- type ContainerManager
- func (mgr *ContainerManager) Attach(ctx context.Context, name string, attach *AttachConfig) error
- func (mgr *ContainerManager) Create(ctx context.Context, name string, config *types.ContainerCreateConfig) (*types.ContainerCreateResp, error)
- func (mgr *ContainerManager) CreateExec(ctx context.Context, name string, config *types.ExecCreateConfig) (string, error)
- func (mgr *ContainerManager) Get(ctx context.Context, name string) (*ContainerMeta, error)
- func (mgr *ContainerManager) List(ctx context.Context, filter ContainerFilter, option *ContainerListOption) ([]*ContainerMeta, error)
- func (mgr *ContainerManager) Pause(ctx context.Context, name string) error
- func (mgr *ContainerManager) Remove(ctx context.Context, name string, option *ContainerRemoveOption) error
- func (mgr *ContainerManager) Rename(ctx context.Context, oldName, newName string) error
- func (mgr *ContainerManager) Restore(ctx context.Context) error
- func (mgr *ContainerManager) Start(ctx context.Context, id, detachKeys string) (err error)
- func (mgr *ContainerManager) StartExec(ctx context.Context, execid string, config *types.ExecStartConfig, ...) error
- func (mgr *ContainerManager) Stop(ctx context.Context, name string, timeout int64) error
- func (mgr *ContainerManager) Unpause(ctx context.Context, name string) error
- type ContainerMeta
- type ContainerMgr
- type ContainerRemoveOption
- type CriManager
- func (c *CriManager) Attach(ctx context.Context, r *runtime.AttachRequest) (*runtime.AttachResponse, error)
- func (c *CriManager) ContainerStats(ctx context.Context, r *runtime.ContainerStatsRequest) (*runtime.ContainerStatsResponse, error)
- func (c *CriManager) ContainerStatus(ctx context.Context, r *runtime.ContainerStatusRequest) (*runtime.ContainerStatusResponse, error)
- func (c *CriManager) CreateContainer(ctx context.Context, r *runtime.CreateContainerRequest) (*runtime.CreateContainerResponse, error)
- func (c *CriManager) Exec(ctx context.Context, r *runtime.ExecRequest) (*runtime.ExecResponse, error)
- func (c *CriManager) ExecSync(ctx context.Context, r *runtime.ExecSyncRequest) (*runtime.ExecSyncResponse, error)
- func (c *CriManager) ImageFsInfo(ctx context.Context, r *runtime.ImageFsInfoRequest) (*runtime.ImageFsInfoResponse, error)
- func (c *CriManager) ImageStatus(ctx context.Context, r *runtime.ImageStatusRequest) (*runtime.ImageStatusResponse, error)
- func (c *CriManager) ListContainerStats(ctx context.Context, r *runtime.ListContainerStatsRequest) (*runtime.ListContainerStatsResponse, error)
- func (c *CriManager) ListContainers(ctx context.Context, r *runtime.ListContainersRequest) (*runtime.ListContainersResponse, error)
- func (c *CriManager) ListImages(ctx context.Context, r *runtime.ListImagesRequest) (*runtime.ListImagesResponse, error)
- func (c *CriManager) ListPodSandbox(ctx context.Context, r *runtime.ListPodSandboxRequest) (*runtime.ListPodSandboxResponse, error)
- func (c *CriManager) PodSandboxStatus(ctx context.Context, r *runtime.PodSandboxStatusRequest) (*runtime.PodSandboxStatusResponse, error)
- func (c *CriManager) PortForward(ctx context.Context, r *runtime.PortForwardRequest) (*runtime.PortForwardResponse, error)
- func (c *CriManager) PullImage(ctx context.Context, r *runtime.PullImageRequest) (*runtime.PullImageResponse, error)
- func (c *CriManager) RemoveContainer(ctx context.Context, r *runtime.RemoveContainerRequest) (*runtime.RemoveContainerResponse, error)
- func (c *CriManager) RemoveImage(ctx context.Context, r *runtime.RemoveImageRequest) (*runtime.RemoveImageResponse, error)
- func (c *CriManager) RemovePodSandbox(ctx context.Context, r *runtime.RemovePodSandboxRequest) (*runtime.RemovePodSandboxResponse, error)
- func (c *CriManager) RunPodSandbox(ctx context.Context, r *runtime.RunPodSandboxRequest) (*runtime.RunPodSandboxResponse, error)
- func (c *CriManager) StartContainer(ctx context.Context, r *runtime.StartContainerRequest) (*runtime.StartContainerResponse, error)
- func (c *CriManager) Status(ctx context.Context, r *runtime.StatusRequest) (*runtime.StatusResponse, error)
- func (c *CriManager) StopContainer(ctx context.Context, r *runtime.StopContainerRequest) (*runtime.StopContainerResponse, error)
- func (c *CriManager) StopPodSandbox(ctx context.Context, r *runtime.StopPodSandboxRequest) (*runtime.StopPodSandboxResponse, error)
- func (c *CriManager) UpdateContainerResources(ctx context.Context, r *runtime.UpdateContainerResourcesRequest) (*runtime.UpdateContainerResourcesResponse, error)
- func (c *CriManager) UpdateRuntimeConfig(ctx context.Context, r *runtime.UpdateRuntimeConfigRequest) (*runtime.UpdateRuntimeConfigResponse, error)
- func (c *CriManager) Version(ctx context.Context, r *runtime.VersionRequest) (*runtime.VersionResponse, error)
- type CriMgr
- type ImageManager
- func (mgr *ImageManager) GetImage(ctx context.Context, idOrRef string) (*types.ImageInfo, error)
- func (mgr *ImageManager) ListImages(ctx context.Context, filters string) ([]types.ImageInfo, error)
- func (mgr *ImageManager) PullImage(pctx context.Context, image, tag string, out io.Writer) error
- func (mgr *ImageManager) RemoveImage(ctx context.Context, image *types.ImageInfo, option *ImageRemoveOption) error
- func (mgr *ImageManager) SearchImages(ctx context.Context, name string, registry string) ([]types.SearchResultItem, error)
- type ImageMgr
- type ImageRemoveOption
- type NetworkManager
- func (nm *NetworkManager) Create(ctx context.Context, create apitypes.NetworkCreateConfig) (*types.Network, error)
- func (nm *NetworkManager) EndpointCreate(ctx context.Context, name string) error
- func (nm *NetworkManager) EndpointInfo(ctx context.Context, name string) (*types.Endpoint, error)
- func (nm *NetworkManager) EndpointList(ctx context.Context) ([]*types.Endpoint, error)
- func (nm *NetworkManager) EndpointRemove(ctx context.Context, name string) error
- func (nm *NetworkManager) Get(ctx context.Context, name string) (*types.Network, error)
- func (nm *NetworkManager) List(ctx context.Context, labels map[string]string) ([]*types.Network, error)
- func (nm *NetworkManager) Remove(ctx context.Context, name string) error
- type NetworkMgr
- type SetupFunc
- type SystemManager
- type SystemMgr
- type VolumeManager
- func (vm *VolumeManager) Attach(ctx context.Context, name string, options map[string]string) (*types.Volume, error)
- func (vm *VolumeManager) Create(ctx context.Context, name, driver string, options, labels map[string]string) error
- func (vm *VolumeManager) Detach(ctx context.Context, name string, options map[string]string) (*types.Volume, error)
- func (vm *VolumeManager) Get(ctx context.Context, name string) (*types.Volume, error)
- func (vm *VolumeManager) List(ctx context.Context, labels map[string]string) ([]string, error)
- func (vm *VolumeManager) Path(ctx context.Context, name string) (string, error)
- func (vm *VolumeManager) Remove(ctx context.Context, name string) error
- type VolumeMgr
Constants ¶
const (
// DefaultStopTimeout is the timeout (in seconds) for the syscall signal used to stop a container.
DefaultStopTimeout = 10
)
Variables ¶
This section is empty.
Functions ¶
Types ¶
type AttachConfig ¶
AttachConfig wraps some infos of attaching.
type Container ¶
Container represents the container instance in runtime.
func (*Container) Config ¶
func (c *Container) Config() *types.ContainerConfig
Config returns container's config.
func (*Container) StopTimeout ¶
StopTimeout returns the timeout (in seconds) used to stop the container.
type ContainerFilter ¶
type ContainerFilter func(*ContainerMeta) bool
ContainerFilter defines a function to filter container in the store.
type ContainerListOption ¶
type ContainerListOption struct {
All bool
}
ContainerListOption wraps the container list interface params.
type ContainerManager ¶
type ContainerManager struct {
// Store stores containers in Backend store.
// Element operated in store must has a type of *ContainerMeta.
// By default, Store will use local filesystem with json format to store containers.
Store *meta.Store
// Client is used to interact with containerd.
Client *ctrd.Client
// NameToID stores relations between container's name and ID.
// It is used to get container ID via container name.
NameToID *collect.SafeMap
ImageMgr ImageMgr
VolumeMgr VolumeMgr
NetworkMgr NetworkMgr
IOs *containerio.Cache
ExecProcesses *collect.SafeMap
Config *config.Config
// contains filtered or unexported fields
}
ContainerManager is the default implement of interface ContainerMgr.
func NewContainerManager ¶
func NewContainerManager(ctx context.Context, store *meta.Store, cli *ctrd.Client, imgMgr ImageMgr, volMgr VolumeMgr, netMgr NetworkMgr, cfg *config.Config) (*ContainerManager, error)
NewContainerManager creates a brand new container manager.
func (*ContainerManager) Attach ¶
func (mgr *ContainerManager) Attach(ctx context.Context, name string, attach *AttachConfig) error
Attach attachs a container's io.
func (*ContainerManager) Create ¶
func (mgr *ContainerManager) Create(ctx context.Context, name string, config *types.ContainerCreateConfig) (*types.ContainerCreateResp, error)
Create checks passed in parameters and create a Container object whose status is set at Created.
func (*ContainerManager) CreateExec ¶
func (mgr *ContainerManager) CreateExec(ctx context.Context, name string, config *types.ExecCreateConfig) (string, error)
CreateExec creates exec process's meta data.
func (*ContainerManager) Get ¶
func (mgr *ContainerManager) Get(ctx context.Context, name string) (*ContainerMeta, error)
Get the detailed information of container.
func (*ContainerManager) List ¶
func (mgr *ContainerManager) List(ctx context.Context, filter ContainerFilter, option *ContainerListOption) ([]*ContainerMeta, error)
List returns the container's list.
func (*ContainerManager) Pause ¶
func (mgr *ContainerManager) Pause(ctx context.Context, name string) error
Pause pauses a running container.
func (*ContainerManager) Remove ¶
func (mgr *ContainerManager) Remove(ctx context.Context, name string, option *ContainerRemoveOption) error
Remove removes a container, it may be running or stopped and so on.
func (*ContainerManager) Rename ¶
func (mgr *ContainerManager) Rename(ctx context.Context, oldName, newName string) error
Rename renames a container
func (*ContainerManager) Restore ¶
func (mgr *ContainerManager) Restore(ctx context.Context) error
Restore containers from meta store to memory and recover those container.
func (*ContainerManager) Start ¶
func (mgr *ContainerManager) Start(ctx context.Context, id, detachKeys string) (err error)
Start a pre created Container.
func (*ContainerManager) StartExec ¶
func (mgr *ContainerManager) StartExec(ctx context.Context, execid string, config *types.ExecStartConfig, attach *AttachConfig) error
StartExec executes a new process in container.
type ContainerMeta ¶
type ContainerMeta struct {
// app armor profile
AppArmorProfile string `json:"AppArmorProfile,omitempty"`
// The arguments to the command being run
Args []string `json:"Args"`
// config
Config *types.ContainerConfig `json:"Config,omitempty"`
// The time the container was created
Created string `json:"Created,omitempty"`
// driver
Driver string `json:"Driver,omitempty"`
// exec ids
ExecIds string `json:"ExecIDs,omitempty"`
// graph driver
GraphDriver *types.GraphDriverData `json:"GraphDriver,omitempty"`
// host config
HostConfig *types.HostConfig `json:"HostConfig,omitempty"`
// hostname path
HostnamePath string `json:"HostnamePath,omitempty"`
// hosts path
HostsPath string `json:"HostsPath,omitempty"`
// The ID of the container
ID string `json:"Id,omitempty"`
// The container's image
Image string `json:"Image,omitempty"`
// log path
LogPath string `json:"LogPath,omitempty"`
// mount label
MountLabel string `json:"MountLabel,omitempty"`
// mounts
Mounts []*types.MountPoint `json:"Mounts"`
// name
Name string `json:"Name,omitempty"`
// network settings
NetworkSettings *types.NetworkSettings `json:"NetworkSettings,omitempty"`
Node interface{} `json:"Node,omitempty"`
// The path to the command being run
Path string `json:"Path,omitempty"`
// process label
ProcessLabel string `json:"ProcessLabel,omitempty"`
// resolv conf path
ResolvConfPath string `json:"ResolvConfPath,omitempty"`
// restart count
RestartCount int64 `json:"RestartCount,omitempty"`
// The total size of all the files in this container.
SizeRootFs int64 `json:"SizeRootFs,omitempty"`
// The size of files that have been created or changed by this container.
SizeRw int64 `json:"SizeRw,omitempty"`
// state
State *types.ContainerState `json:"State,omitempty"`
}
ContainerMeta represents the container's meta data.
type ContainerMgr ¶
type ContainerMgr interface {
// Create a new container.
Create(ctx context.Context, name string, config *types.ContainerCreateConfig) (*types.ContainerCreateResp, error)
// Start a container.
Start(ctx context.Context, id, detachKeys string) error
// Stop a container.
Stop(ctx context.Context, name string, timeout int64) error
// Pause a container.
Pause(ctx context.Context, name string) error
// Unpause a container.
Unpause(ctx context.Context, name string) error
// Attach a container.
Attach(ctx context.Context, name string, attach *AttachConfig) error
// List returns the list of containers.
List(ctx context.Context, filter ContainerFilter, option *ContainerListOption) ([]*ContainerMeta, error)
// CreateExec creates exec process's environment.
CreateExec(ctx context.Context, name string, config *types.ExecCreateConfig) (string, error)
// StartExec executes a new process in container.
StartExec(ctx context.Context, execid string, config *types.ExecStartConfig, attach *AttachConfig) error
// Remove removes a container, it may be running or stopped and so on.
Remove(ctx context.Context, name string, option *ContainerRemoveOption) error
// Rename renames a container
Rename(ctx context.Context, oldName string, newName string) error
// Get the detailed information of container
Get(ctx context.Context, name string) (*ContainerMeta, error)
}
ContainerMgr as an interface defines all operations against container.
type ContainerRemoveOption ¶
ContainerRemoveOption wraps the container remove interface params.
type CriManager ¶
type CriManager struct {
ContainerMgr ContainerMgr
ImageMgr ImageMgr
}
CriManager is an implementation of interface CriMgr.
func NewCriManager ¶
func NewCriManager(ctrMgr ContainerMgr, imgMgr ImageMgr) (*CriManager, error)
NewCriManager creates a brand new cri manager.
func (*CriManager) Attach ¶
func (c *CriManager) Attach(ctx context.Context, r *runtime.AttachRequest) (*runtime.AttachResponse, error)
Attach prepares a streaming endpoint to attach to a running container, and returns the address.
func (*CriManager) ContainerStats ¶
func (c *CriManager) ContainerStats(ctx context.Context, r *runtime.ContainerStatsRequest) (*runtime.ContainerStatsResponse, error)
ContainerStats returns stats of the container. If the container does not exist, the call returns an error.
func (*CriManager) ContainerStatus ¶
func (c *CriManager) ContainerStatus(ctx context.Context, r *runtime.ContainerStatusRequest) (*runtime.ContainerStatusResponse, error)
ContainerStatus inspects the container and returns the status.
func (*CriManager) CreateContainer ¶
func (c *CriManager) CreateContainer(ctx context.Context, r *runtime.CreateContainerRequest) (*runtime.CreateContainerResponse, error)
CreateContainer creates a new container in the given PodSandbox.
func (*CriManager) Exec ¶
func (c *CriManager) Exec(ctx context.Context, r *runtime.ExecRequest) (*runtime.ExecResponse, error)
Exec prepares a streaming endpoint to execute a command in the container, and returns the address.
func (*CriManager) ExecSync ¶
func (c *CriManager) ExecSync(ctx context.Context, r *runtime.ExecSyncRequest) (*runtime.ExecSyncResponse, error)
ExecSync executes a command in the container, and returns the stdout output. If command exits with a non-zero exit code, an error is returned.
func (*CriManager) ImageFsInfo ¶
func (c *CriManager) ImageFsInfo(ctx context.Context, r *runtime.ImageFsInfoRequest) (*runtime.ImageFsInfoResponse, error)
ImageFsInfo returns information of the filesystem that is used to store images.
func (*CriManager) ImageStatus ¶
func (c *CriManager) ImageStatus(ctx context.Context, r *runtime.ImageStatusRequest) (*runtime.ImageStatusResponse, error)
ImageStatus returns the status of the image, returns nil if the image isn't present.
func (*CriManager) ListContainerStats ¶
func (c *CriManager) ListContainerStats(ctx context.Context, r *runtime.ListContainerStatsRequest) (*runtime.ListContainerStatsResponse, error)
ListContainerStats returns stats of all running containers.
func (*CriManager) ListContainers ¶
func (c *CriManager) ListContainers(ctx context.Context, r *runtime.ListContainersRequest) (*runtime.ListContainersResponse, error)
ListContainers lists all containers matching the filter.
func (*CriManager) ListImages ¶
func (c *CriManager) ListImages(ctx context.Context, r *runtime.ListImagesRequest) (*runtime.ListImagesResponse, error)
ListImages lists existing images.
func (*CriManager) ListPodSandbox ¶
func (c *CriManager) ListPodSandbox(ctx context.Context, r *runtime.ListPodSandboxRequest) (*runtime.ListPodSandboxResponse, error)
ListPodSandbox returns a list of Sandbox.
func (*CriManager) PodSandboxStatus ¶
func (c *CriManager) PodSandboxStatus(ctx context.Context, r *runtime.PodSandboxStatusRequest) (*runtime.PodSandboxStatusResponse, error)
PodSandboxStatus returns the status of the PodSandbox.
func (*CriManager) PortForward ¶
func (c *CriManager) PortForward(ctx context.Context, r *runtime.PortForwardRequest) (*runtime.PortForwardResponse, error)
PortForward prepares a streaming endpoint to forward ports from a PodSandbox, and returns the address.
func (*CriManager) PullImage ¶
func (c *CriManager) PullImage(ctx context.Context, r *runtime.PullImageRequest) (*runtime.PullImageResponse, error)
PullImage pulls an image with authentication config.
func (*CriManager) RemoveContainer ¶
func (c *CriManager) RemoveContainer(ctx context.Context, r *runtime.RemoveContainerRequest) (*runtime.RemoveContainerResponse, error)
RemoveContainer removes the container.
func (*CriManager) RemoveImage ¶
func (c *CriManager) RemoveImage(ctx context.Context, r *runtime.RemoveImageRequest) (*runtime.RemoveImageResponse, error)
RemoveImage removes the image.
func (*CriManager) RemovePodSandbox ¶
func (c *CriManager) RemovePodSandbox(ctx context.Context, r *runtime.RemovePodSandboxRequest) (*runtime.RemovePodSandboxResponse, error)
RemovePodSandbox removes the sandbox. If there are running containers in the sandbox, they should be forcibly removed.
func (*CriManager) RunPodSandbox ¶
func (c *CriManager) RunPodSandbox(ctx context.Context, r *runtime.RunPodSandboxRequest) (*runtime.RunPodSandboxResponse, error)
RunPodSandbox creates and starts a pod-level sandbox. Runtimes should ensure the sandbox is in ready state.
func (*CriManager) StartContainer ¶
func (c *CriManager) StartContainer(ctx context.Context, r *runtime.StartContainerRequest) (*runtime.StartContainerResponse, error)
StartContainer starts the container.
func (*CriManager) Status ¶
func (c *CriManager) Status(ctx context.Context, r *runtime.StatusRequest) (*runtime.StatusResponse, error)
Status returns the status of the runtime.
func (*CriManager) StopContainer ¶
func (c *CriManager) StopContainer(ctx context.Context, r *runtime.StopContainerRequest) (*runtime.StopContainerResponse, error)
StopContainer stops a running container with a grace period (i.e., timeout).
func (*CriManager) StopPodSandbox ¶
func (c *CriManager) StopPodSandbox(ctx context.Context, r *runtime.StopPodSandboxRequest) (*runtime.StopPodSandboxResponse, error)
StopPodSandbox stops the sandbox. If there are any running containers in the sandbox, they should be forcibly terminated.
func (*CriManager) UpdateContainerResources ¶
func (c *CriManager) UpdateContainerResources(ctx context.Context, r *runtime.UpdateContainerResourcesRequest) (*runtime.UpdateContainerResourcesResponse, error)
UpdateContainerResources updates ContainerConfig of the container.
func (*CriManager) UpdateRuntimeConfig ¶
func (c *CriManager) UpdateRuntimeConfig(ctx context.Context, r *runtime.UpdateRuntimeConfigRequest) (*runtime.UpdateRuntimeConfigResponse, error)
UpdateRuntimeConfig updates the runtime config. Currently only handles podCIDR updates.
func (*CriManager) Version ¶
func (c *CriManager) Version(ctx context.Context, r *runtime.VersionRequest) (*runtime.VersionResponse, error)
Version returns the runtime name, runtime version and runtime API version.
type CriMgr ¶
type CriMgr interface {
// RuntimeServiceServer is interface of CRI runtime service.
runtime.RuntimeServiceServer
// ImageServiceServer is interface of CRI image service.
runtime.ImageServiceServer
}
CriMgr as an interface defines all operations against CRI.
type ImageManager ¶
type ImageManager struct {
// DefaultRegistry is the default registry of daemon.
// When users do not specify image repo in image name,
// daemon will automatically pull images from DefaultRegistry.
// TODO: make DefaultRegistry can be reloaded.
DefaultRegistry string
// contains filtered or unexported fields
}
ImageManager is an implementation of interface ImageMgr. It is a stateless manager, and it will never store image details. When image details needed from users, ImageManager interacts with containerd to get details.
func NewImageManager ¶
NewImageManager initializes a brand new image manager.
func (*ImageManager) ListImages ¶
ListImages lists images stored by containerd.
func (*ImageManager) RemoveImage ¶
func (mgr *ImageManager) RemoveImage(ctx context.Context, image *types.ImageInfo, option *ImageRemoveOption) error
RemoveImage deletes an image by reference.
func (*ImageManager) SearchImages ¶
func (mgr *ImageManager) SearchImages(ctx context.Context, name string, registry string) ([]types.SearchResultItem, error)
SearchImages searches imaged from specified registry.
type ImageMgr ¶
type ImageMgr interface {
// PullImage pulls images from specified registry.
PullImage(ctx context.Context, image, tag string, out io.Writer) error
// ListImages lists images stored by containerd.
ListImages(ctx context.Context, filters string) ([]types.ImageInfo, error)
// Search Images from specified registry.
SearchImages(ctx context.Context, name string, registry string) ([]types.SearchResultItem, error)
// GetImage gets image by image id or ref.
GetImage(ctx context.Context, idOrRef string) (*types.ImageInfo, error)
// RemoveImage deletes an image by reference.
RemoveImage(ctx context.Context, image *types.ImageInfo, option *ImageRemoveOption) error
}
ImageMgr as an interface defines all operations against images.
type ImageRemoveOption ¶
type ImageRemoveOption struct {
Force bool
}
ImageRemoveOption wraps the image remove interface params.
type NetworkManager ¶
type NetworkManager struct {
// contains filtered or unexported fields
}
NetworkManager is the default implement of interface NetworkMgr.
func NewNetworkManager ¶
NewNetworkManager creates a brand new network manager.
func (*NetworkManager) Create ¶
func (nm *NetworkManager) Create(ctx context.Context, create apitypes.NetworkCreateConfig) (*types.Network, error)
Create is used to create network.
func (*NetworkManager) EndpointCreate ¶
func (nm *NetworkManager) EndpointCreate(ctx context.Context, name string) error
EndpointCreate is used to create network endpoint.
func (*NetworkManager) EndpointInfo ¶
EndpointInfo returns the information of endpoint that specified name/id.
func (*NetworkManager) EndpointList ¶
EndpointList returns all endpoints.
func (*NetworkManager) EndpointRemove ¶
func (nm *NetworkManager) EndpointRemove(ctx context.Context, name string) error
EndpointRemove is used to create network endpoint.
type NetworkMgr ¶
type NetworkMgr interface {
// Create is used to create network.
Create(ctx context.Context, create apitypes.NetworkCreateConfig) (*types.Network, error)
// NetworkRemove is used to delete an existing network.
Remove(ctx context.Context, name string) error
// List returns all networks on this host.
List(ctx context.Context, labels map[string]string) ([]*types.Network, error)
// Get returns the information of network that specified name/id.
Get(ctx context.Context, name string) (*types.Network, error)
// EndpointCreate is used to create network endpoint.
EndpointCreate(ctx context.Context, name string) error
// EndpointRemove is used to create network endpoint.
EndpointRemove(ctx context.Context, name string) error
// EndpointList returns all endpoints.
EndpointList(ctx context.Context) ([]*types.Endpoint, error)
// EndpointInfo returns the information of endpoint that specified name/id.
EndpointInfo(ctx context.Context, name string) (*types.Endpoint, error)
}
NetworkMgr defines interface to manage container network.
type SystemManager ¶
type SystemManager struct {
// contains filtered or unexported fields
}
SystemManager is an instance of system management.
func NewSystemManager ¶
func NewSystemManager(cfg *config.Config) (*SystemManager, error)
NewSystemManager creates a brand new system manager.
func (*SystemManager) Info ¶
func (mgr *SystemManager) Info() (types.SystemInfo, error)
Info shows system information of daemon.
func (*SystemManager) Version ¶
func (mgr *SystemManager) Version() (types.SystemVersion, error)
Version shows version of daemon.
type SystemMgr ¶
type SystemMgr interface {
Info() (types.SystemInfo, error)
Version() (types.SystemVersion, error)
}
SystemMgr as an interface defines all operations against host.
type VolumeManager ¶
type VolumeManager struct {
// contains filtered or unexported fields
}
VolumeManager is the default implement of interface VolumeMgr.
func NewVolumeManager ¶
NewVolumeManager creates a brand new volume manager.
func (*VolumeManager) Attach ¶
func (vm *VolumeManager) Attach(ctx context.Context, name string, options map[string]string) (*types.Volume, error)
Attach is used to bind a volume to container.
func (*VolumeManager) Create ¶
func (vm *VolumeManager) Create(ctx context.Context, name, driver string, options, labels map[string]string) error
Create is used to create volume.
func (*VolumeManager) Detach ¶
func (vm *VolumeManager) Detach(ctx context.Context, name string, options map[string]string) (*types.Volume, error)
Detach is used to unbind a volume from container.
type VolumeMgr ¶
type VolumeMgr interface {
// Create is used to create volume.
Create(ctx context.Context, name, driver string, options, labels map[string]string) error
// Remove is used to delete an existing volume.
Remove(ctx context.Context, name string) error
// List returns all volumes on this host.
List(ctx context.Context, labels map[string]string) ([]string, error)
// Get returns the information of volume that specified name/id.
Get(ctx context.Context, name string) (*types.Volume, error)
// Path returns the mount path of volume.
Path(ctx context.Context, name string) (string, error)
// Attach is used to bind a volume to container.
Attach(ctx context.Context, name string, options map[string]string) (*types.Volume, error)
// Detach is used to unbind a volume from container.
Detach(ctx context.Context, name string, options map[string]string) (*types.Volume, error)
}
VolumeMgr defines interface to manage container volume.