Project

Profile

Help

Story #3401

Updated by bizhang over 6 years ago

Manifest    should contain the following fields: 

 * digest: CharField(255) 
 * schema_version: IntegerField() 
 * config_layer: ForeignKey to Layer 
 * layers: ManyToManyField('Layer', through='ManifestLayer') 
 * mediaType: ChoiceField() (application/vnd.docker.distribution.manifest.v1+json, application/vnd.docker.distribution.manifest.v2+json) 


 

 ManifestLayer is used to model the relationship between Manifests and Layer 

 * layer: ForeignKey to Layer 
 * manifest: ForeignKey to Manifest 
 * mediaType: ChoiceField()  
 * size: IntegerField() 


 MediaType Choice for the ManifestLayer: Layers: 

 * application/vnd.docker.container.image.v1+json Container config json represented as a layer 
 * application/vnd.docker.image.rootfs.diff.tar.gzip Regular layer 
 * application/vnd.docker.image.rootfs.foreign.diff.tar.gzip Foreign layer ( we do not intend to store foreign layers. Docker client during pull will fetch it from the remote location) 

Back