Container Image Specfiles

Container runtime parameters are defined by JSON spec files. Parameters are introduced over time, and the version of the file changes as a result. All versions of the file are supported at runtime - the version specified outlines the parameters that will be found in that file.

Note

If you wish to specify a parameter that was introduced in a given version of the file, you must also specify the required parameters for all previous versions.

Version 1

Parameter name
Required Yes
Type String
Description Image name advertised to clients
   
Parameter image-name
Required No
Type String
Description Image name used by instance runtime. Defaults to name if unspecified.
   
Parameter max-slots
Required Yes
Type Integer
Description This parameter is ignored, but required.
   
Parameter memory
Required Yes
Type Integer
Description The default amount of memory in megabytes allocated to containers using this image

Version 2

Parameter console-shell
Required Yes
Type String
Description The path (internal to the instance) of the shell to run when a user requests a console. May be empty to disable console access.

Version 3

Parameter capabilities
Required Yes
Type List
Description A list of linux capabilities to set for instances using this image. Pre-version-3 instances are granted the set of capabilities specified by the list [‘NET_ADMIN’, ‘NET_RAW’].
   
Parameter volumes
Required Yes
Type List
Description Non-ephemeral volumes added to instances using this image. May be empty.
   
Parameter network-shadow
Required Yes
Type Boolean
Description Set to true if the image MUST have the network set up before the entrypoint is invoked. This adds significant overhead to the system, and should be avoided if possible.

Version 4

Parameter make-user-image
Required Yes
Type Boolean
Description Build a new image based on this one for each requesting user. This is highly discouraged.

Version 5

Parameter attributes
Required No
Type List of Objects
Description (Review examples in existing images)
   
Parameter handler
Required No
Type Object
Description Callback handler class for this image, in the format of: {“version” : 1, “module” : “<full.module.path>”, “class” : “<classname>”}
   
Parameter data-dir
Required Yes
Type String
Description Root directory where volumes are stored for instances using this image. May be empty.

Version 6

Parameter port-attributes
Required No
Type List of Objects
Description (Review examples in existing images)

Version 7

Parameter memory-min
Required No
Type Integer
Description The minimum memory a user may request for instances using this image.
   
Parameter memory-max
Required No
Type Integer
Description The maximum memory a user may request for instances using this image.