1
0
mirror of https://github.com/opencontainers/runtime-spec.git synced 2025-04-18 20:04:01 +03:00
runtime-spec/config-vm.md
James O. D. Hunt 74b670efb9 config: Add VM-based container configuration section
This adds a section to describe VM based container configurations to be
used by OCI runtimes using hardware virtualization to provide another
layer of isolation.

As part of this section we define 3 entries:

- A virtual machine root image opbject. This is the guest image that
  contains the virtual machine root filesystem. The container image will
  be mounted on top of that filesystem.

- A virtual machine kernel object. This is the kernel that will boot
  inside the virtual machine. The object describes the host kernel image
  path, additional parameters and an optional guest initrd for the
  kernel to use.

- A virtual machine hypervisor object. This is the hypervisor that will
  manage the container virtual machine from the host. The object
  describe a hypervisor binary path and some additional parameters.

Signed-off-by: James O. D. Hunt <james.o.hunt@intel.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2018-03-09 23:05:21 +01:00

3.6 KiB

Virtual-machine-specific Container Configuration

This section describes the schema for the virtual-machine-specific section of the container configuration. The virtual-machine container specification provides additional configuration for the hypervisor, kernel, and image.

Hypervisor Object

hypervisor (object, OPTIONAL) specifies details of the hypervisor that manages the container virtual machine.

Example

    "hypervisor": {
        "path": "/path/to/vmm",
        "parameters": ["opts1=foo", "opts2=bar"]
    }

Kernel Object

kernel (object, REQUIRED) specifies details of the kernel to boot the container virtual machine with.

Example

    "kernel": {
        "path": "/path/to/vmlinuz",
        "parameters": ["foo=bar", "hello world"],
        "initrd": "/path/to/initrd.img"
    }

Image Object

image (object, OPTIONAL) specifies details of the image that contains the root filesystem for the container virtual machine.

This image contains the root filesystem that the virtual machine kernel will boot into, not to be confused with the container root filesystem itself. The latter, as specified by path from the Root Configuration section, will be mounted inside the virtual machine at a location chosen by the virtual-machine-based runtime.

Example

    "image": {
        "path": "/path/to/vm/rootfs.img",
	"format": "raw"
    }