container

package
v29.0.2+incompatible Latest Latest
Warning

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

Go to latest
Published: Nov 17, 2025 License: Apache-2.0 Imports: 67 Imported by: 277

Documentation

Index

Constants

View Source
const (
	PullImageAlways  = "always"
	PullImageMissing = "missing" // Default (matches previous behavior)
	PullImageNever   = "never"
)

Pull constants

Variables

This section is empty.

Functions

func ForwardAllSignals

func ForwardAllSignals(ctx context.Context, apiClient client.ContainerAPIClient, cid string, sigc <-chan os.Signal)

ForwardAllSignals forwards signals to the container

The channel you pass in must already be setup to receive any signals you want to forward.

func MonitorTtySize

func MonitorTtySize(ctx context.Context, cli command.Cli, id string, isExec bool) error

MonitorTtySize updates the container tty size when the terminal tty changes size

func NewStatsFormat

func NewStatsFormat(source, osType string) formatter.Format

NewStatsFormat returns a format for rendering an CStatsContext

func RunAttach

func RunAttach(ctx context.Context, dockerCLI command.Cli, containerID string, opts *AttachOptions) error

RunAttach executes an `attach` command

func RunExec

func RunExec(ctx context.Context, dockerCLI command.Cli, containerIDorName string, options ExecOptions) error

RunExec executes an `exec` command

func RunStart

func RunStart(ctx context.Context, dockerCli command.Cli, opts *StartOptions) error

RunStart executes a `start` command

func RunStats

func RunStats(ctx context.Context, dockerCLI command.Cli, options *StatsOptions) error

RunStats displays a live stream of resource usage statistics for one or more containers. This shows real-time information on CPU usage, memory usage, and network I/O.

Types

type AttachOptions

type AttachOptions struct {
	NoStdin    bool
	Proxy      bool
	DetachKeys string
}

AttachOptions group options for `attach` command

type ExecOptions

type ExecOptions struct {
	DetachKeys  string
	Interactive bool
	TTY         bool
	Detach      bool
	User        string
	Privileged  bool
	Env         opts.ListOpts
	Workdir     string
	Command     []string
	EnvFile     opts.ListOpts
}

ExecOptions group options for `exec` command

func NewExecOptions

func NewExecOptions() ExecOptions

NewExecOptions creates a new ExecOptions

type StartOptions

type StartOptions struct {
	Attach        bool
	OpenStdin     bool
	DetachKeys    string
	Checkpoint    string
	CheckpointDir string

	Containers []string
}

StartOptions group options for `start` command

type Stats

type Stats struct {
	StatsEntry
	// contains filtered or unexported fields
}

Stats represents an entity to store containers statistics synchronously

func NewStats

func NewStats(container string) *Stats

NewStats returns a new Stats entity and sets in it the given name

func (*Stats) GetError

func (cs *Stats) GetError() error

GetError returns the container statistics error. This is used to determine whether the statistics are valid or not

func (*Stats) GetStatistics

func (cs *Stats) GetStatistics() StatsEntry

GetStatistics returns container statistics with other meta data such as the container name

func (*Stats) SetError

func (cs *Stats) SetError(err error)

SetError sets container statistics error

func (*Stats) SetErrorAndReset

func (cs *Stats) SetErrorAndReset(err error)

SetErrorAndReset zeroes all the container statistics and store the error. It is used when receiving time out error during statistics collecting to reduce lock overhead

func (*Stats) SetStatistics

func (cs *Stats) SetStatistics(s StatsEntry)

SetStatistics set the container statistics

type StatsEntry

type StatsEntry struct {
	Container        string
	Name             string
	ID               string
	CPUPercentage    float64
	Memory           float64 // On Windows this is the private working set
	MemoryLimit      float64 // Not used on Windows
	MemoryPercentage float64 // Not used on Windows
	NetworkRx        float64
	NetworkTx        float64
	BlockRead        float64
	BlockWrite       float64
	PidsCurrent      uint64 // Not used on Windows
	IsInvalid        bool
}

StatsEntry represents the statistics data collected from a container

type StatsOptions

type StatsOptions struct {
	// All allows including both running and stopped containers. The default
	// is to only include running containers.
	All bool

	// NoStream disables streaming stats. If enabled, stats are collected once,
	// and the result is printed.
	NoStream bool

	// NoTrunc disables truncating the output. The default is to truncate
	// output such as container-IDs.
	NoTrunc bool

	// Format is a custom template to use for presenting the stats.
	// Refer to [flagsHelper.FormatHelp] for accepted formats.
	Format string

	// Containers is the list of container names or IDs to include in the stats.
	// If empty, all containers are included. It is mutually exclusive with the
	// Filters option, and an error is produced if both are set.
	Containers []string

	// Filters provides optional filters to filter the list of containers and their
	// associated container-events to include in the stats if no list of containers
	// is set. If no filter is provided, all containers are included. Filters and
	// Containers are currently mutually exclusive, and setting both options
	// produces an error.
	//
	// These filters are used both to collect the initial list of containers and
	// to refresh the list of containers based on container-events, accepted
	// filters are limited to the intersection of filters accepted by "events"
	// and "container list".
	//
	// Currently only "label" / "label=value" filters are accepted. Additional
	// filter options may be added in future (within the constraints described
	// above), but may require daemon-side validation as the list of accepted
	// filters can differ between daemon- and API versions.
	Filters client.Filters
}

StatsOptions defines options for RunStats.

Jump to

Keyboard shortcuts

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