Your company here ā€” click to reach over 10,000 unique daily visitors

runc - Man Page

Open Container Initiative runtime


runc [global-option ...] command [command-option ...] [argument ...]


runc is a command line client for running applications packaged according to the Open Container Initiative (OCI) format and is a compliant implementation of the Open Container Initiative specification.

runc integrates well with existing process supervisors to provide a production container runtime environment for applications. It can be used with your existing process monitoring tools and the container will be spawned as a direct child of the process supervisor.

Containers are configured using bundles. A bundle for a container is a directory that includes a specification file named config.json and a root filesystem. The root filesystem contains the contents of the container.

To run a new instance of a container:

# runc run [ -b bundle ] container-id

Where container-id is your name for the instance of the container that you are starting. The name you provide for the container instance must be unique on your host.

Providing the bundle directory using -b is optional. The default value for bundle is the current directory.



Checkpoint a running container. See runc-checkpoint(8).


Create a container. See runc-create(8).


Delete any resources held by the container; often used with detached containers. See runc-delete(8).


Display container events, such as OOM notifications, CPU, memory, I/O and network statistics. See runc-events(8).


Execute a new process inside the container. See runc-exec(8).


Send a specified signal to the container's init process. See runc-kill(8).


List containers started by runc with the given --root. See runc-list(8).


Suspend all processes inside the container. See runc-pause(8).


Show processes running inside the container. See runc-ps(8).


Restore a container from a previous checkpoint. See runc-restore(8).


Resume all processes that have been previously paused. See runc-resume(8).


Create and start a container. See runc-run(8).


Create a new specification file (config.json). See runc-spec(8).


Start a container previously created by runc create. See runc-start(8).


Show the container state. See runc-state(8).


Update container resource constraints. See runc-update(8).

help, ā€‰h

Show a list of commands or help for a particular command.

Global Options

These options can be used with any command, and must precede the command.


Enable debug logging.

--log path

Set the log destination to path. The default is to log to stderr.

--log-format text|json

Set the log format (default is text).

--root path

Set the root directory to store containers' state. The path should be located on tmpfs. Default is /run/runc, or $XDG_RUNTIME_DIR/runc for rootless containers.

--criu path

Set the path to the criu(8) binary used for checkpoint and restore. Default is criu.


Enable systemd cgroup support. If this is set, the container spec (config.json) is expected to have cgroupsPath value in the slice:prefix:name form (e.g. system.slice:runc:434234).

--rootless true|false|auto

Enable or disable rootless mode. Default is auto, meaning to auto-detect whether rootless should be enabled.


Show help.


Show version.

See Also

runc-checkpoint(8), runc-create(8), runc-delete(8), runc-events(8), runc-exec(8), runc-kill(8), runc-list(8), runc-pause(8), runc-ps(8), runc-restore(8), runc-resume(8), runc-run(8), runc-spec(8), runc-start(8), runc-state(8), runc-update(8).

Referenced By

buildah-build(1), buildah-run(1), conmon(8), podman(1), podman-build(1), podman-container-runlabel(1), podman-farm-build(1), runc-checkpoint(8), runc-create(8), runc-delete(8), runc-events(8), runc-exec(8), runc-list(8), runc-pause(8), runc-ps(8), runc-restore(8), runc-resume(8), runc-run(8), runc-spec(8), runc-start(8), runc-state(8), runc-update(8).