commands

package
v1.7.0-beta.0 Latest Latest
Warning

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

Go to latest
Published: Oct 25, 2022 License: Apache-2.0 Imports: 29 Imported by: 1,324

Documentation

Index

Constants

View Source
const (

	// CtrCniMetadataExtension is an extension name that identify metadata of container in CreateContainerRequest
	CtrCniMetadataExtension = "ctr.cni-containerd.metadata"
)

Variables

View Source
var (
	// SnapshotterFlags are cli flags specifying snapshotter names
	SnapshotterFlags = []cli.Flag{
		cli.StringFlag{
			Name:   "snapshotter",
			Usage:  "snapshotter name. Empty value stands for the default value.",
			EnvVar: "CONTAINERD_SNAPSHOTTER",
		},
	}

	// SnapshotterLabels are cli flags specifying labels which will be added to the new snapshot for container.
	SnapshotterLabels = cli.StringSliceFlag{
		Name:  "snapshotter-label",
		Usage: "labels added to the new snapshot for this container.",
	}

	// LabelFlag is a cli flag specifying labels
	LabelFlag = cli.StringSliceFlag{
		Name:  "label",
		Usage: "labels to attach to the image",
	}

	// RegistryFlags are cli flags specifying registry options
	RegistryFlags = []cli.Flag{
		cli.BoolFlag{
			Name:  "skip-verify,k",
			Usage: "skip SSL certificate validation",
		},
		cli.BoolFlag{
			Name:  "plain-http",
			Usage: "allow connections using plain HTTP",
		},
		cli.StringFlag{
			Name:  "user,u",
			Usage: "user[:password] Registry user and password",
		},
		cli.StringFlag{
			Name:  "refresh",
			Usage: "refresh token for authorization server",
		},
		cli.StringFlag{
			Name: "hosts-dir",

			Usage: "Custom hosts configuration directory",
		},
		cli.StringFlag{
			Name:  "tlscacert",
			Usage: "path to TLS root CA",
		},
		cli.StringFlag{
			Name:  "tlscert",
			Usage: "path to TLS client certificate",
		},
		cli.StringFlag{
			Name:  "tlskey",
			Usage: "path to TLS client key",
		},
		cli.BoolFlag{
			Name:  "http-dump",
			Usage: "dump all HTTP request/responses when interacting with container registry",
		},
		cli.BoolFlag{
			Name:  "http-trace",
			Usage: "enable HTTP tracing for registry interactions",
		},
	}

	// ContainerFlags are cli flags specifying container options
	ContainerFlags = []cli.Flag{
		cli.StringFlag{
			Name:  "config,c",
			Usage: "path to the runtime-specific spec config file",
		},
		cli.StringFlag{
			Name:  "cwd",
			Usage: "specify the working directory of the process",
		},
		cli.StringSliceFlag{
			Name:  "env",
			Usage: "specify additional container environment variables (e.g. FOO=bar)",
		},
		cli.StringFlag{
			Name:  "env-file",
			Usage: "specify additional container environment variables in a file(e.g. FOO=bar, one per line)",
		},
		cli.StringSliceFlag{
			Name:  "label",
			Usage: "specify additional labels (e.g. foo=bar)",
		},
		cli.StringSliceFlag{
			Name:  "annotation",
			Usage: "specify additional OCI annotations (e.g. foo=bar)",
		},
		cli.StringSliceFlag{
			Name:  "mount",
			Usage: "specify additional container mount (e.g. type=bind,src=/tmp,dst=/host,options=rbind:ro)",
		},
		cli.BoolFlag{
			Name:  "net-host",
			Usage: "enable host networking for the container",
		},
		cli.BoolFlag{
			Name:  "privileged",
			Usage: "run privileged container",
		},
		cli.BoolFlag{
			Name:  "read-only",
			Usage: "set the containers filesystem as readonly",
		},
		cli.StringFlag{
			Name:  "runtime",
			Usage: "runtime name or absolute path to runtime binary",
			Value: defaults.DefaultRuntime,
		},
		cli.StringFlag{
			Name:  "runtime-config-path",
			Usage: "optional runtime config path",
		},
		cli.BoolFlag{
			Name:  "tty,t",
			Usage: "allocate a TTY for the container",
		},
		cli.StringSliceFlag{
			Name:  "with-ns",
			Usage: "specify existing Linux namespaces to join at container runtime (format '<nstype>:<path>')",
		},
		cli.StringFlag{
			Name:  "pid-file",
			Usage: "file path to write the task's pid",
		},
		cli.IntSliceFlag{
			Name:  "gpus",
			Usage: "add gpus to the container",
		},
		cli.BoolFlag{
			Name:  "allow-new-privs",
			Usage: "turn off OCI spec's NoNewPrivileges feature flag",
		},
		cli.Uint64Flag{
			Name:  "memory-limit",
			Usage: "memory limit (in bytes) for the container",
		},
		cli.StringSliceFlag{
			Name:  "cap-add",
			Usage: "add Linux capabilities (Set capabilities with 'CAP_' prefix)",
		},
		cli.StringSliceFlag{
			Name:  "cap-drop",
			Usage: "drop Linux capabilities (Set capabilities with 'CAP_' prefix)",
		},
		cli.BoolFlag{
			Name:  "seccomp",
			Usage: "enable the default seccomp profile",
		},
		cli.StringFlag{
			Name:  "seccomp-profile",
			Usage: "file path to custom seccomp profile. seccomp must be set to true, before using seccomp-profile",
		},
		cli.StringFlag{
			Name:  "apparmor-default-profile",
			Usage: "enable AppArmor with the default profile with the specified name, e.g. \"cri-containerd.apparmor.d\"",
		},
		cli.StringFlag{
			Name:  "apparmor-profile",
			Usage: "enable AppArmor with an existing custom profile",
		},
		cli.StringFlag{
			Name:  "blockio-config-file",
			Usage: "file path to blockio class definitions. By default class definitions are not loaded.",
		},
		cli.StringFlag{
			Name:  "blockio-class",
			Usage: "name of the blockio class to associate the container with",
		},
		cli.StringFlag{
			Name:  "rdt-class",
			Usage: "name of the RDT class to associate the container with. Specifies a Class of Service (CLOS) for cache and memory bandwidth management.",
		},
		cli.StringFlag{
			Name:  "hostname",
			Usage: "set the container's host name",
		},
		cli.StringFlag{
			Name:  "user,u",
			Usage: "username or user id, group optional (format: <name|uid>[:<group|gid>])",
		},
	}
)
View Source
var PushTracker = docker.NewInMemoryTracker()

PushTracker returns a new InMemoryTracker which tracks the ref status

Functions

func AnnotationArgs added in v1.5.15

func AnnotationArgs(annoStrings []string) (map[string]string, error)

AnnotationArgs returns a map of annotation key,value pairs.

func AppContext

func AppContext(context *cli.Context) (gocontext.Context, gocontext.CancelFunc)

AppContext returns the context for a command. Should only be called once per command, near the start.

This will ensure the namespace is picked up and set the timeout, if one is defined.

func ForwardAllSignals

func ForwardAllSignals(ctx gocontext.Context, task killer) chan os.Signal

ForwardAllSignals forwards signals

func FullID added in v1.7.0

func FullID(ctx context.Context, c containerd.Container) string

func GetResolver

func GetResolver(ctx gocontext.Context, clicontext *cli.Context) (remotes.Resolver, error)

GetResolver prepares the resolver from the environment and options

func IntToInt32Array added in v1.3.0

func IntToInt32Array(in []int) []int32

IntToInt32Array converts an array of int's to int32's

func LabelArgs

func LabelArgs(labelStrings []string) map[string]string

LabelArgs returns a map of label key,value pairs

func NewClient

NewClient returns a new containerd client

func NewDebugClientTrace added in v1.5.0

func NewDebugClientTrace(ctx gocontext.Context) *httptrace.ClientTrace

NewDebugClientTrace returns a Go http trace client predefined to write DNS and connection information to the log. This is used via the --http-trace flag on push and pull operations in ctr.

func ObjectWithLabelArgs

func ObjectWithLabelArgs(clicontext *cli.Context) (string, map[string]string)

ObjectWithLabelArgs returns the first arg and a LabelArgs object

func PrintAsJSON

func PrintAsJSON(x interface{})

PrintAsJSON prints input in JSON format

func StopCatch

func StopCatch(sigc chan os.Signal)

StopCatch stops and closes a channel

func WritePidFile added in v1.1.0

func WritePidFile(path string, pid int) error

WritePidFile writes the pid atomically to a file

Types

type DebugTransport added in v1.5.0

type DebugTransport struct {
	// contains filtered or unexported fields
}

DebugTransport wraps the underlying http.RoundTripper interface and dumps all requests/responses to the writer.

func (DebugTransport) RoundTrip added in v1.5.0

func (t DebugTransport) RoundTrip(req *http.Request) (*http.Response, error)

RoundTrip dumps request/responses and executes the request using the underlying transport.

type NetworkMetaData added in v1.7.0

type NetworkMetaData struct {
	EnableCni bool
}

ctr pass cni network metadata to containerd if ctr run use option of --cni

Jump to

Keyboard shortcuts

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