containers

package
v0.1.14 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 27, 2020 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// RestartPolicyAny Always restarts
	RestartPolicyAny = "any"
	// RestartPolicyNone Never restarts
	RestartPolicyNone = "none"
	// RestartPolicyOnFailure Restarts only on failure
	RestartPolicyOnFailure = "on-failure"
)

Variables

RestartPolicyList all available restart policy values

Functions

This section is empty.

Types

type Container

type Container struct {
	ID                     string
	Status                 string
	Image                  string
	Command                string
	CPUTime                uint64
	CPULimit               float64
	MemoryUsage            uint64
	MemoryLimit            uint64
	PidsCurrent            uint64
	PidsLimit              uint64
	Labels                 []string
	Ports                  []Port
	Platform               string
	RestartPolicyCondition string
}

Container represents a created container

type ContainerConfig

type ContainerConfig struct {
	// ID uniquely identifies the container
	ID string
	// Image specifies the iamge reference used for a container
	Image string
	// Ports provide a list of published ports
	Ports []Port
	// Labels set labels to the container
	Labels map[string]string
	// Volumes to be mounted
	Volumes []string
	// Memlimit
	MemLimit formatter.MemBytes
	// CPUlimit
	CPULimit float64
	// Environment variables
	Environment []string
	// Restart policy condition
	RestartPolicyCondition string
}

ContainerConfig contains the configuration data about a container

type DeleteRequest

type DeleteRequest struct {
	Force bool
}

DeleteRequest contains configuration about a delete request

type ExecRequest

type ExecRequest struct {
	Stdin       io.Reader
	Stdout      io.Writer
	Stderr      io.Writer
	Command     string
	Interactive bool
	Tty         bool
}

ExecRequest contaiens configuration about an exec request

type LogsRequest

type LogsRequest struct {
	Follow bool
	Tail   string
	Width  int
	Writer io.Writer
}

LogsRequest contains configuration about a log request

type Port

type Port struct {
	// HostPort is the port number on the host
	HostPort uint32
	// ContainerPort is the port number inside the container
	ContainerPort uint32
	// Protocol is the protocol of the port mapping
	Protocol string
	// HostIP is the host ip to use
	HostIP string
}

Port represents a published port of a container

type Service

type Service interface {
	// List returns all the containers
	List(ctx context.Context, all bool) ([]Container, error)
	// Start starts a stopped container
	Start(ctx context.Context, containerID string) error
	// Stop stops the running container
	Stop(ctx context.Context, containerID string, timeout *uint32) error
	// Run creates and starts a container
	Run(ctx context.Context, config ContainerConfig) error
	// Exec executes a command inside a running container
	Exec(ctx context.Context, containerName string, request ExecRequest) error
	// Logs returns all the logs of a container
	Logs(ctx context.Context, containerName string, request LogsRequest) error
	// Delete removes containers
	Delete(ctx context.Context, containerID string, request DeleteRequest) error
	// Inspect get a specific container
	Inspect(ctx context.Context, id string) (Container, error)
}

Service interacts with the underlying container backend

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL