Task #3231
closedDocker image upload can be more efficient
0%
Description
As a user, when uploading two images that share the same parent layer(s) and differ just in child layer(s) and/or config, a lot of time is spent uploading both tar files when a lot of the content is duplicated.
The REST API should let one upload layers/blobs individually, and then a manifest.json file to tie everything together.
Background¶
A v2 schema 2 Docker image format (as created by Skopeo) is a tar file of layers and a manifest.json.
A smarter client could open up the TAR file, search for the blobs in pulp and upload them if missing, then upload the manifest that references all the blobs.
Changes required¶
All the changes are at the REST API level. There is no need to write the smarter client (i.e. pulp-admin) at this point.
- ability to upload a blob into a repo
- ability to upload a manifest into a repo, also checking that all referenced blobs are present
Notes¶
#2523 would no longer apply as written, since there is a case for removing blobs when they are not referenced by any manifest.
Related issues
Updated by dalley over 6 years ago
- Related to Task #2523: Remove the ability to remove docker blobs via API added
Updated by ipanova@redhat.com over 6 years ago
- Tracker changed from Issue to Task
- % Done set to 0
Updated by bmbouter about 5 years ago
- Status changed from NEW to CLOSED - WONTFIX
Updated by bmbouter about 5 years ago
Pulp 2 is approaching maintenance mode, and this Pulp 2 ticket is not being actively worked on. As such, it is being closed as WONTFIX. Pulp 2 is still accepting contributions though, so if you want to contribute a fix for this ticket, please reopen or comment on it. If you don't have permissions to reopen this ticket, or you want to discuss an issue, please reach out via the developer mailing list.