package restart

import "github.com/containerd/containerd/runtime/restart"

Package restart enables containers to have labels added and monitored to keep the container's task running if it is killed.

Setting the StatusLabel on a container instructs the restart monitor to keep that container's task in a specific status. Setting the LogPathLabel on a container will setup the task's IO to be redirected to a log file when running a task within the restart manager.

The restart labels can be cleared off of a container using the WithNoRestarts Opt.

The restart monitor has one option in the containerd config under the [plugins.restart] section. `interval = "10s" sets the reconcile interval that the restart monitor checks for task state and reconciles the desired status for that task.

Index

Constants

const (
	// StatusLabel sets the restart status label for a container
	StatusLabel = "containerd.io/restart.status"
	// LogPathLabel sets the restart log path label for a container
	LogPathLabel = "containerd.io/restart.logpath"
)

Functions

func WithLogPath

func WithLogPath(path string) func(context.Context, *containerd.Client, *containers.Container) error

WithLogPath sets the log path for a container

func WithNoRestarts

func WithNoRestarts(_ context.Context, _ *containerd.Client, c *containers.Container) error

WithNoRestarts clears any restart information from the container

func WithStatus

WithStatus sets the status for a container

Source Files

restart.go

Directories

PathSynopsis
runtime/restart/monitor
Version
v1.3.0-beta.0
Published
Jul 31, 2019
Platform
js/wasm
Imports
3 packages
Last checked
4 seconds ago

Tools for package owners.