From de7026a4f65e98d529b310de336dbf48f2ce924c Mon Sep 17 00:00:00 2001 From: "W. Trevor King" Date: Tue, 20 Sep 2016 02:09:03 -0700 Subject: [PATCH 1/2] media-types: Define '+gzip' structured syntax suffix Leaning heavily on the existing entries in RFC 6839. The suffix makes it easy to clarify DiffIDs without requiring a particular layer media type. It also allows you to create image-layout instances where the layers are stored uncompressed, which may be useful for cases such as: * Binary diffing between layer blobs for cheaper updates of large layers [1]. * Compressing an image-layout tarball for a smaller smaller overall tarball (by avoiding the unnecessary fragmentation of compressing the individual blob entries). [1]: http://ircbot.wl.linuxfoundation.org/eavesdrop/%23opencontainers/%23opencontainers.2016-08-16.log.html#t2016-08-16T23:35:43 Signed-off-by: W. Trevor King --- config.md | 3 ++- img/media-types.dot | 2 +- layer.md | 11 ++++---- manifest.md | 6 +++-- media-types.md | 54 +++++++++++++++++++++++++++++++++++++--- specs-go/v1/mediatype.go | 4 +-- 6 files changed, 64 insertions(+), 16 deletions(-) diff --git a/config.md b/config.md index 7ee028b58..48ecf5212 100644 --- a/config.md +++ b/config.md @@ -28,7 +28,8 @@ Changing it means creating a new derived image, instead of changing the existing A layer DiffID is a SHA256 digest over the layer's uncompressed tar archive and serialized in the descriptor digest format, e.g., `sha256:a9561eb1b190625c9adb5a9513e72c4dedafc1cb2d4c5236c9a6957ec7dfd5a9`. Layers must be packed and unpacked reproducibly to avoid changing the layer DiffID, for example by using tar-split to save the tar headers. -NOTE: the DiffID is different than the digest in the manifest list because the manifest digest is taken over the gzipped layer for `application/vnd.oci.image.layer.v1.tar+gzip` types. +The difference between DiffIDs and the layer digests in the [manifest's `layers`](manifest.md#image-manifest-property-descriptions) is that the layer digest is taken over the blob regardless of compression, while the DiffID is taken after removing any compression. +For an `application/vnd.oci.image.layer.tar+gzip` layer, the layer digest is taken over the `application/vnd.oci.image.layer.tar+gzip` content, while the DiffID is take over the `application/vnd.oci.image.layer.tar` content. ### Layer ChainID diff --git a/img/media-types.dot b/img/media-types.dot index aa51bc215..607465d4f 100644 --- a/img/media-types.dot +++ b/img/media-types.dot @@ -3,7 +3,7 @@ digraph G { manifestList [shape=note, label="Manifest list\n<>\napplication/vnd.oci.image.manifest.list.v1+json"] manifest [shape=note, label="Image manifest\napplication/vnd.oci.image.manifest.v1+json"] config [shape=note, label="Image JSON\napplication/vnd.oci.image.config.v1+json"] - layer [shape=note, label="Layer tar+gzip\napplication/vnd.oci.image.layer.v1.tar+gzip\napplication/vnd.oci.image.layer.nondistributable.v1.tar+gzip"] + layer [shape=note, label="Layer tar archive\napplication/vnd.oci.image.layer.v1.tar\napplication/vnd.oci.image.layer.nondistributable.v1.tar"] } manifestList -> manifest [label="1..*"] diff --git a/layer.md b/layer.md index f28b03ee6..a8d9b9f4f 100644 --- a/layer.md +++ b/layer.md @@ -4,12 +4,12 @@ This document describes how to serialize a filesystem and filesystem changes lik One or more layers are applied on top of each other to create a complete filesystem. This document will use a concrete example to illustrate how to create and consume these filesystem layers. -This section defines the `application/vnd.oci.image.layer.v1.tar+gzip` and `application/vnd.oci.image.layer.nondistributable.v1.tar+gzip` [media types](media-types.md). +This section defines the `application/vnd.oci.image.layer.v1.tar` and `application/vnd.oci.image.layer.nondistributable.v1.tar` [media types](media-types.md). ## Distributable Format -Layer Changesets for the [mediatype](./media-types.md) `application/vnd.oci.image.layer.v1.tar+gzip` MUST be packaged in a [tar archive][tar-archive] compressed with [gzip][gzip]. -Layer Changesets for the [mediatype](./media-types.md) `application/vnd.oci.image.layer.v1.tar+gzip` MUST NOT include duplicate entries for file paths in the resulting [tar archive][tar-archive]. +Layer Changesets for the [media type](./media-types.md) `application/vnd.oci.image.layer.v1.tar` MUST be packaged in [tar archive][tar-archive]. +Layer Changesets for the [media type](./media-types.md) `application/vnd.oci.image.layer.v1.tar` MUST NOT include duplicate entries for file paths in the resulting [tar archive][tar-archive]. ## Change Types @@ -208,7 +208,7 @@ To signify that the resource `./etc/my-app-config` MUST be removed when the chan ## Applying Changesets -Layer Changesets of [mediatype](./media-types.md) `application/vnd.oci.image.layer.v1.tar+gzip` are _applied_, rather than simply extracted as tar archives. +Layer Changesets of [media type](./media-types.md) `application/vnd.oci.image.layer.v1.tar` are _applied_, rather than simply extracted as tar archives. Applying a layer changeset requires special consideration for the [whiteout](#whiteouts) files. @@ -311,11 +311,10 @@ Any given image is likely to be composed of several of these Image Filesystem Ch Certain layers, due to legal requirements, may not be regularly distributable. Typically, such layers are downloaded directly from a distributor but are never uploaded. -Layers that have these restrictions SHOULD be tagged with an alternative mediatype of `application/vnd.oci.image.layer.nondistributable.v1.tar+gzip`. +Layers that have these restrictions SHOULD be tagged with an alternative media type of `application/vnd.oci.image.layer.nondistributable.v1.tar`. [Descriptors](descriptor.md) referencing these layers MAY include `urls` for downloading these layers. It is implementation-defined whether or not implementations upload layers tagged with this media type. [libarchive-tar]: https://github.com/libarchive/libarchive/wiki/ManPageTar5#POSIX_ustar_Archives [gnu-tar-standard]: http://www.gnu.org/software/tar/manual/html_node/Standard.html [tar-archive]: https://en.wikipedia.org/wiki/Tar_(computing) -[gzip]: http://www.zlib.org/rfc-gzip.html diff --git a/manifest.md b/manifest.md index 900162b08..830195993 100644 --- a/manifest.md +++ b/manifest.md @@ -54,11 +54,13 @@ Unlike the [Manifest List](manifest-list.md), which contains information about a This [descriptor property](descriptor.md#properties) has additional restrictions for `layers[]`. Implementations MUST support at least the following media types: - - [`application/vnd.oci.image.layer.v1.tar+gzip`](layer.md) - - [`application/vnd.oci.image.layer.nondistributable.v1.tar+gzip`](layer.md#non-distributable-layers) + - [`application/vnd.oci.image.layer.v1.tar`](layer.md) + - [`application/vnd.oci.image.layer.nondistributable.v1.tar`](layer.md#non-distributable-layers) Manifests concerned with portability SHOULD use one of the above media types. + Entries in this field will frequently use the [`+gzip` structured syntax suffix](media-types.md#the-gzip-structured-syntax-suffix). + - **`annotations`** *string-string map* This OPTIONAL property contains arbitrary metadata for the image manifest. diff --git a/media-types.md b/media-types.md index 6aa42bfd7..578d23a81 100644 --- a/media-types.md +++ b/media-types.md @@ -6,8 +6,48 @@ The following media types identify the formats described here and their referenc - `application/vnd.oci.image.manifest.list.v1+json`: [Manifest list](manifest-list.md#manifest-list) - `application/vnd.oci.image.manifest.v1+json`: [Image manifest](manifest.md#image-manifest) - `application/vnd.oci.image.config.v1+json`: [Image config](config.md) -- `application/vnd.oci.image.layer.v1.tar+gzip`: ["Layer", as a gzipped tar archive](layer.md) -- `application/vnd.oci.image.layer.nondistributable.v1.tar+gzip`: ["Layer", as a gzipped tar archive with distribution restrictions](layer.md#non-distributable-layers) +- `application/vnd.oci.image.layer.v1.tar`: ["Layer", as a tar archive](layer.md) +- `application/vnd.oci.image.layer.nondistributable.v1.tar`: ["Layer", as a tar archive with distribution restrictions](layer.md#non-distributable-layers) + +## Suffixes + +[RFC 6839][rfc6839] defines several structured syntax suffixes for use with media types. +This section adds additional structured syntax suffixes for use with media types in OCI Image contexts. + +### The +gzip Structured Syntax Suffix + +[GZIP][rfc1952] is a widely used compression format. +The media type [`application/gzip`][rfc6713] has been registered for such files. +The suffix `+gzip` MAY be used with any media type whose representation follows that established for `application/gzip`. +The media type structured syntax suffix registration form follows: + +Name: GZIP file format + +`+suffix`: `+gzip` + +References: [[GZIP][rfc1952]] + +Encoding considerations: GZIP is a binary encoding. + +Fragment identifier considerations: + +The syntax and semantics of fragment identifiers specified for `+gzip` SHOULD be as specified for `application/gzip`. +(At publication of this document, there is no fragment identification syntax defined for `application/gzip`.) +The syntax and semantics for fragment identifiers for a specific `xxx/yyy+gzip` SHOULD be processed as follows: + +* For cases defined in `+gzip`, where the fragment identifier resolves per the `+gzip` rules, then process as specified in `+gzip`. +* For cases defined in `+gzip`, where the fragment identifier does not resolve per the `+gzip` rules, then process as specified in `xxx/yyy+gzip`. +* For cases not defined in `+gzip`, then process as specified in `xxx/yyy+gzip`. + +Interoperability considerations: n/a + +Security considerations: + +See the "Security Considerations" sections of [RFC 1952][rfc1952] and [RFC 6713][rfc6713]. +Each individual media type registered with a `+gzip` suffix can have additional security considerations. + +Implementations MUST support the `+gzip` suffix for all [OCI Image Media Types](#oci-image-media-types). +For example, they MUST support `application/vnd.oci.image.layer.v1.tar+gzip` and `application/vnd.oci.image.layer.nondistributable.v1.tar+gzip` for [manifest `layers`](manifest.md#image-manifest-property-descriptions) and `application/vnd.oci.image.manifest.v1+json+gzip` for [manifest list `manifests`](manifest-list.md#manifest-list-property-descriptions). ## Media Type Conflicts @@ -41,11 +81,13 @@ This section shows where the OCI Image Specification is compatible with formats - [application/vnd.docker.distribution.manifest.v2+json](https://github.com/docker/distribution/blob/master/docs/spec/manifest-v2-2.md#image-manifest-field-descriptions) -### application/vnd.oci.image.rootfs.tar.gzip +### application/vnd.oci.image.layer.v1.tar **Interchangeable and fully compatible mime-types** -- [application/vnd.docker.image.rootfs.diff.tar.gzip](https://github.com/docker/docker/blob/master/image/spec/v1.md#creating-an-image-filesystem-changeset) +- With `+gzip` + + - [application/vnd.docker.image.rootfs.diff.tar.gzip](https://github.com/docker/docker/blob/master/image/spec/v1.md#creating-an-image-filesystem-changeset) ### application/vnd.oci.image.config.v1+json @@ -61,3 +103,7 @@ The following figure shows how the above media types reference each other: [Descriptors](descriptor.md) are used for all references. The manifest list being a "fat manifest" references one or more image manifests per target platform. An image manifest references exactly one target configuration and possibly many layers. + +[rfc1952]: https://tools.ietf.org/html/rfc1952 +[rfc6713]: https://tools.ietf.org/html/rfc6713 +[rfc6839]: https://tools.ietf.org/html/rfc6839 diff --git a/specs-go/v1/mediatype.go b/specs-go/v1/mediatype.go index d6592f549..75713ee0b 100644 --- a/specs-go/v1/mediatype.go +++ b/specs-go/v1/mediatype.go @@ -25,11 +25,11 @@ const ( MediaTypeImageManifestList = "application/vnd.oci.image.manifest.list.v1+json" // MediaTypeImageLayer is the media type used for layers referenced by the manifest. - MediaTypeImageLayer = "application/vnd.oci.image.layer.v1.tar+gzip" + MediaTypeImageLayer = "application/vnd.oci.image.layer.v1.tar" // MediaTypeImageLayerNonDistributable is the media type for layers referenced by // the manifest but with distribution restrictions. - MediaTypeImageLayerNonDistributable = "application/vnd.oci.image.layer.nondistributable.v1.tar+gzip" + MediaTypeImageLayerNonDistributable = "application/vnd.oci.image.layer.nondistributable.v1.tar" // MediaTypeImageConfig specifies the media type for the image configuration. MediaTypeImageConfig = "application/vnd.oci.image.config.v1+json" From a2886378c009bd683a03522b2c3f47433f09811f Mon Sep 17 00:00:00 2001 From: "W. Trevor King" Date: Tue, 20 Sep 2016 11:15:35 -0700 Subject: [PATCH 2/2] img: Rebuild media-types.png Generated with: $ make img/media-types.png and Graphviz version 2.38.0. Signed-off-by: W. Trevor King --- img/media-types.png | Bin 32914 -> 31617 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/img/media-types.png b/img/media-types.png index aea24f7ff75b9a65f66832899938ada03b7a3b99..a9e9606fa5a6dff4615afb9d2230dbb358be4662 100644 GIT binary patch literal 31617 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 I*>mcD0RWJN!~g&Q literal 32914 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 Az5oCK