package containerd

import "github.com/google/cadvisor/container/containerd"

This code has been taken from containerd repo to avoid large library import

Handler for containerd containers.

Index

Variables

var ArgContainerdEndpoint = flag.String("containerd", "/run/containerd/containerd.sock", "containerd endpoint")
var ArgContainerdNamespace = flag.String("containerd-namespace", "k8s.io", "containerd namespace")
var (
	ErrTaskIsInUnknownState = errors.New("containerd task is in unknown state") // used when process reported in containerd task is in Unknown State
)

Functions

func ContainerNameToContainerdID

func ContainerNameToContainerdID(name string) string

Returns the containerd ID from the full container name.

func NewPlugin

func NewPlugin() container.Plugin

NewPlugin returns an implementation of container.Plugin suitable for passing to container.RegisterPlugin()

func Register

func Register(factory info.MachineInfoFactory, fsInfo fs.FsInfo, includedMetrics container.MetricSet) error

Register root container before running this function!

Types

type ContainerdClient

type ContainerdClient interface {
	LoadContainer(ctx context.Context, id string) (*containers.Container, error)
	TaskPid(ctx context.Context, id string) (uint32, error)
	Version(ctx context.Context) (string, error)
}

func Client

func Client(address, namespace string) (ContainerdClient, error)

Client creates a containerd client

Source Files

client.go factory.go grpc.go handler.go plugin.go

Directories

PathSynopsis
container/containerd/containers
container/containerd/identifiersPackage identifiers provides common validation for identifiers and keys across containerd.
container/containerd/installThe install package registers containerd.NewPlugin() as the "containerd" container provider when imported
container/containerd/namespaces
container/containerd/pkg
container/containerd/pkg/dialer
Version
v0.52.1 (latest)
Published
Mar 5, 2025
Platform
linux/amd64
Imports
34 packages
Last checked
3 days ago

Tools for package owners.