Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ContainerManager

type ContainerManager interface {
	// CreateContainer creates a new container in specified PodSandbox.
	CreateContainer(podSandboxID string, config *runtimeapi.ContainerConfig, sandboxConfig *runtimeapi.PodSandboxConfig) (string, error)
	// StartContainer starts the container.
	StartContainer(containerID string) error
	// StopContainer stops a running container with a grace period (i.e., timeout).
	StopContainer(containerID string, timeout int64) error
	// RemoveContainer removes the container.
	RemoveContainer(containerID string) error
	// ListContainers lists all containers by filters.
	ListContainers(filter *runtimeapi.ContainerFilter) ([]*runtimeapi.Container, error)
	// ContainerStatus returns the status of the container.
	ContainerStatus(containerID string) (*runtimeapi.ContainerStatus, error)
	// UpdateContainerResources updates the cgroup resources for the container.
	UpdateContainerResources(containerID string, resources *runtimeapi.LinuxContainerResources) 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.
	ExecSync(containerID string, cmd []string, timeout time.Duration) (stdout []byte, stderr []byte, err error)
	// Exec prepares a streaming endpoint to execute a command in the container, and returns the address.
	Exec(*runtimeapi.ExecRequest) (*runtimeapi.ExecResponse, error)
	// Attach prepares a streaming endpoint to attach to a running container, and returns the address.
	Attach(req *runtimeapi.AttachRequest) (*runtimeapi.AttachResponse, error)
	// ReopenContainerLog asks runtime to reopen the stdout/stderr log file
	// for the container. If it returns error, new container log file MUST NOT
	// be created.
	ReopenContainerLog(ContainerID string) error
}

    ContainerManager contains methods to manipulate containers managed by a container runtime. The methods are thread-safe.

    type ContainerStatsManager

    type ContainerStatsManager interface {
    	// ContainerStats returns stats of the container. If the container does not
    	// exist, the call returns an error.
    	ContainerStats(containerID string) (*runtimeapi.ContainerStats, error)
    	// ListContainerStats returns stats of all running containers.
    	ListContainerStats(filter *runtimeapi.ContainerStatsFilter) ([]*runtimeapi.ContainerStats, error)
    }

      ContainerStatsManager contains methods for retrieving the container statistics.

      type ImageManagerService

      type ImageManagerService interface {
      	// ListImages lists the existing images.
      	ListImages(filter *runtimeapi.ImageFilter) ([]*runtimeapi.Image, error)
      	// ImageStatus returns the status of the image.
      	ImageStatus(image *runtimeapi.ImageSpec) (*runtimeapi.Image, error)
      	// PullImage pulls an image with the authentication config.
      	PullImage(image *runtimeapi.ImageSpec, auth *runtimeapi.AuthConfig, podSandboxConfig *runtimeapi.PodSandboxConfig) (string, error)
      	// RemoveImage removes the image.
      	RemoveImage(image *runtimeapi.ImageSpec) error
      	// ImageFsInfo returns information of the filesystem that is used to store images.
      	ImageFsInfo() ([]*runtimeapi.FilesystemUsage, error)
      }

        ImageManagerService interface should be implemented by a container image manager. The methods should be thread-safe.

        type PodSandboxManager

        type PodSandboxManager interface {
        	// RunPodSandbox creates and starts a pod-level sandbox. Runtimes should ensure
        	// the sandbox is in ready state.
        	RunPodSandbox(config *runtimeapi.PodSandboxConfig, runtimeHandler string) (string, error)
        	// StopPodSandbox stops the sandbox. If there are any running containers in the
        	// sandbox, they should be force terminated.
        	StopPodSandbox(podSandboxID string) error
        	// RemovePodSandbox removes the sandbox. If there are running containers in the
        	// sandbox, they should be forcibly removed.
        	RemovePodSandbox(podSandboxID string) error
        	// PodSandboxStatus returns the Status of the PodSandbox.
        	PodSandboxStatus(podSandboxID string) (*runtimeapi.PodSandboxStatus, error)
        	// ListPodSandbox returns a list of Sandbox.
        	ListPodSandbox(filter *runtimeapi.PodSandboxFilter) ([]*runtimeapi.PodSandbox, error)
        	// PortForward prepares a streaming endpoint to forward ports from a PodSandbox, and returns the address.
        	PortForward(*runtimeapi.PortForwardRequest) (*runtimeapi.PortForwardResponse, error)
        }

          PodSandboxManager contains methods for operating on PodSandboxes. The methods are thread-safe.

          type RuntimeService

          type RuntimeService interface {
          	RuntimeVersioner
          	ContainerManager
          	PodSandboxManager
          	ContainerStatsManager
          
          	// UpdateRuntimeConfig updates runtime configuration if specified
          	UpdateRuntimeConfig(runtimeConfig *runtimeapi.RuntimeConfig) error
          	// Status returns the status of the runtime.
          	Status() (*runtimeapi.RuntimeStatus, error)
          }

            RuntimeService interface should be implemented by a container runtime. The methods should be thread-safe.

            type RuntimeVersioner

            type RuntimeVersioner interface {
            	// Version returns the runtime name, runtime version and runtime API version
            	Version(apiVersion string) (*runtimeapi.VersionResponse, error)
            }

              RuntimeVersioner contains methods for runtime name, version and API version.

              Source Files

              Directories

              Path Synopsis
              runtime
              v1alpha2
              Package v1alpha2 is a generated protocol buffer package.
              Package v1alpha2 is a generated protocol buffer package.