...

Text file src/github.com/opencontainers/runtime-spec/spec.md

Documentation: github.com/opencontainers/runtime-spec

     1# <a name="openContainerInitiativeRuntimeSpecification" />Open Container Initiative Runtime Specification
     2
     3The [Open Container Initiative][oci] develops specifications for standards on Operating System process and application containers.
     4
     5# <a name="ociRuntimeSpecAbstract" />Abstract
     6
     7The Open Container Initiative Runtime Specification aims to specify the configuration, execution environment, and lifecycle of a container.
     8
     9A container's configuration is specified as the `config.json` for the supported platforms and details the fields that enable the creation of a container.
    10The execution environment is specified to ensure that applications running inside a container have a consistent environment between runtimes along with common actions defined for the container's lifecycle.
    11
    12# <a name="ociRuntimeSpecPlatforms" />Platforms
    13
    14Platforms defined by this specification are:
    15
    16* `linux`: [runtime.md](runtime.md), [config.md](config.md), [features.md](features.md), [config-linux.md](config-linux.md), [runtime-linux.md](runtime-linux.md), and [features-linux.md](features-linux.md).
    17* `solaris`: [runtime.md](runtime.md), [config.md](config.md), [features.md](features.md), and [config-solaris.md](config-solaris.md).
    18* `windows`: [runtime.md](runtime.md), [config.md](config.md), [features.md](features.md), and [config-windows.md](config-windows.md).
    19* `vm`: [runtime.md](runtime.md), [config.md](config.md), [features.md](features.md), and [config-vm.md](config-vm.md).
    20* `zos`: [runtime.md](runtime.md), [config.md](config.md), [features.md](features.md), and [config-zos.md](config-zos.md).
    21
    22# <a name="ociRuntimeSpecTOC" />Table of Contents
    23
    24- [Introduction](spec.md)
    25    - [Notational Conventions](#notational-conventions)
    26    - [Container Principles](principles.md)
    27- [Filesystem Bundle](bundle.md)
    28- [Runtime and Lifecycle](runtime.md)
    29    - [Linux-specific Runtime and Lifecycle](runtime-linux.md)
    30- [Configuration](config.md)
    31    - [Linux-specific Configuration](config-linux.md)
    32    - [Solaris-specific Configuration](config-solaris.md)
    33    - [Windows-specific Configuration](config-windows.md)
    34    - [Virtual-Machine-specific Configuration](config-vm.md)
    35    - [z/OS-specific Configuration](config-zos.md)
    36- [Features Structure](features.md)
    37    - [Linux-specific Features Structure](features-linux.md)
    38- [Glossary](glossary.md)
    39
    40# <a name="ociRuntimeSpecNotationalConventions" />Notational Conventions
    41
    42The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" are to be interpreted as described in [RFC 2119][rfc2119].
    43
    44The key words "unspecified", "undefined", and "implementation-defined" are to be interpreted as described in the [rationale for the C99 standard][c99-unspecified].
    45
    46An implementation is not compliant for a given CPU architecture if it fails to satisfy one or more of the MUST, REQUIRED, or SHALL requirements for the [platforms](#platforms) it implements.
    47An implementation is compliant for a given CPU architecture if it satisfies all the MUST, REQUIRED, and SHALL requirements for the [platforms](#platforms) it implements.
    48
    49
    50[c99-unspecified]: http://www.open-std.org/jtc1/sc22/wg14/www/C99RationaleV5.10.pdf#page=18
    51[oci]: http://www.opencontainers.org
    52[rfc2119]: https://www.rfc-editor.org/rfc/rfc2119.html

View as plain text