package json
Type Members
-
trait
BuildableManifestTemplate extends ManifestTemplate
Parent class for image manifest JSON templates that can be built.
Parent class for image manifest JSON templates that can be built.
- See also
V22ManifestTemplate for Docker V2.2 format
OCIManifestTemplate for OCI format
-
class
ContainerConfigurationTemplate extends JsonTemplate
JSON Template for Docker Container Configuration referenced in Docker Manifest Schema V2.2
JSON Template for Docker Container Configuration referenced in Docker Manifest Schema V2.2
Example container config JSON:
{ "architecture": "amd64", "os": "linux", "config": { "Env": ["/usr/bin/java"], "Entrypoint": ["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"], "Cmd": ["arg1", "arg2"], "rootfs": { "diff_ids": [ "sha256:2aebd096e0e237b447781353379722157e6c2d434b9ec5a0d63f2a6f07cf90c2", "sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef", ], "type": "layers" } } } -
class
DescriptorDigestDeserializer extends JsonDeserializer[DescriptorDigest]
Deserializes a JSON element into a
DescriptorDigestobject. -
class
DescriptorDigestSerializer extends JsonSerializer[DescriptorDigest]
Serializes a
DescriptorDigestinto JSON element. -
class
ImageToJsonTranslator extends AnyRef
Translates an
Imageinto a manifest or container configuration JSON BLOB.Translates an
Imageinto a manifest or container configuration JSON BLOB.Example usage:
ImageToJsonTranslator translator = new ImageToJsonTranslator(image); Blob containerConfigurationBlob = translator.getContainerConfigurationBlob(); BlobDescriptor containerConfigurationBlobDescriptor = blob.writeTo(outputStream); Blob manifestBlob = translator.getManifestBlob(containerConfigurationBlobDescriptor); -
class
JsonToImageTranslator extends AnyRef
Translates
V21ManifestTemplateandV22ManifestTemplateintoImage. -
trait
ManifestTemplate extends JsonTemplate
Parent class for image manifest JSON templates.
-
class
OCIManifestTemplate extends BuildableManifestTemplate
JSON Template for OCI Manifest Schema
JSON Template for OCI Manifest Schema
Example manifest JSON:
{ "schemaVersion": 2, "mediaType": "application/vnd.oci.image.manifest.v1+json", "config": { "mediaType": "application/vnd.oci.image.config.v1+json", "size": 631, "digest": "sha256:26b84ca5b9050d32e68f66ad0f3e2bbcd247198a6e6e09a7effddf126eb8d873", "layers": [ { "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip", "size": 1991435, "digest": "sha256:b56ae66c29370df48e7377c8f9baa744a3958058a766793f821dadcb144a4647" }, { "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip", "size": 32, "digest": "sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4" } ] } }- See also
-
class
UnknownManifestFormatException extends RegistryException
Exception thrown when trying to parse an unknown image manifest format.
-
class
V21ManifestTemplate extends ManifestTemplate
JSON template for Docker Manifest Schema V2.1
JSON template for Docker Manifest Schema V2.1
This is only for parsing manifests in the older V2.1 schema. Generated manifests should be in the V2.2 schema using the
V22ManifestTemplate.Example manifest JSON (only the
fsLayersandhistoryfields are relevant for parsing):{ ... "fsLayers": { { "blobSum": "sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef", { "blobSum": "sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef" } }, "history": [ { "v1Compatibility": "" } ] ... } } -
class
V22ManifestTemplate extends BuildableManifestTemplate
JSON Template for Docker Manifest Schema V2.2
JSON Template for Docker Manifest Schema V2.2
Example manifest JSON:
{ "schemaVersion": 2, "mediaType": "application/vnd.docker.distribution.manifest.v2+json", "config": { "mediaType": "application/vnd.docker.container.image.v1+json", "size": 631, "digest": "sha256:26b84ca5b9050d32e68f66ad0f3e2bbcd247198a6e6e09a7effddf126eb8d873", "layers": [ { "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", "size": 1991435, "digest": "sha256:b56ae66c29370df48e7377c8f9baa744a3958058a766793f821dadcb144a4647" }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", "size": 32, "digest": "sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4" } ] } }