rkt Design Proposals

rkt prepare

rkt can prepare images to run in a pod.
This means it will fetch (if necessary) the images, extract them in its internal tree store, and allocate a pod UUID.
If overlay fs is not supported or disabled, it will also copy the tree in the pod rootfs.

Support for overlay fs will be auto-detected if --no-overlay is set to false. If an unsupported filesystem is detected, rkt will print a warning message and continue preparing the pod by falling back in non-overlay mode as described above:

a file system where the d_type field is set to DT_UNKNOWN, see getdents(2)

In this way, the pod is ready to be launched immediately by the run-prepared command.

Running rkt prepare + rkt run-prepared is semantically equivalent to running rkt run.
Therefore, the supported arguments are mostly the same as in run except runtime arguments like --interactive or --mds-register.

The path to the pod manifest. If it's non-empty, then only --net, --no-overlay and --interactive will have effect.

--port

none

A port name and number pair

Container port name to expose through host port number. Requires contained network. Syntax: --port=NAME:HOSTPORT The NAME is that given in the ACI. By convention, Docker containers' EXPOSEd ports are given a name formed from the port number, a hyphen, and the protocol, e.g., 80-tcp, giving something like --port=80-tcp:8080

--private-users

false

true or false

Run within user namespaces

--quiet

false

true or false

Suppress superfluous output on stdout, print only the UUID on success

--set-env

``

An environment variable. Syntax NAME=VALUE

An environment variable to set for apps

--set-env-file

``

Path of an environment variables file

Environment variables to set for apps

--signature

``

A file path

Local signature file to use in validating the preceding image

--stage1-url

``

A URL to a stage1 image. HTTP/HTTPS/File/Docker URLs are supported

Image to use as stage1

--stage1-path

``

A path to a stage1 image. Absolute and relative paths are supported

Image to use as stage1

--stage1-name

``

A name of a stage1 image. Will perform a discovery if the image is not in the store