Project

Profile

Help

Story #3990

closed

As a user, I can "docker pull" from a registry hosted by Pulp

Added by dkliban@redhat.com about 6 years ago. Updated almost 5 years ago.

Status:
CLOSED - CURRENTRELEASE
Priority:
Normal
Sprint/Milestone:
Start date:
Due date:
% Done:

100%

Estimated time:
(Total: 0:00 h)
Platform Release:
Groomed:
No
Sprint Candidate:
No
Tags:
Sprint:
Quarter:

Description

Motivation:

Docker clients are designed to interact with a REST API provided by a Docker registry. In Pulp 2, the registry API was delivered by a separate application, Crane. Pulp 3's ability to serve custom live APIs has made it possible for Crane's feature set to be incorporated into the pulp_docker plugin.

Use cases:

As a user, I can use a DockerPublisher to create a publication.

As a user, I can create DockerDistribution and link it to a repository and publisher or a specific publication.

As a user, I can perform a "docker pull pulp-hostname:8000/some/relative/path"

As a user, I can perform a "docker pull pulp-hostname:8000/some/relative/path:someVersion"

Registry API requirements

The v2 registry API needs to minimally support the following endpoints.

/v2/ - Provides version support information for /v2 requests. Returns {}.

/v2/<some/relative/path>/manifests/<manifest-identifier> - Serve the manifest requested

/v2/<some/relative/path>/blobs/sha256:<sha256 checksum> - Serve the blob with the matching checksum


Sub-issues 5 (0 open5 closed)

Task #3991: Add a DockerPublisher and DockerDistribution models, serializers, and viewsetsCLOSED - CURRENTRELEASEdkliban@redhat.com

Actions
Task #3992: Add a publish task that creates publications of Docker repositoriesCLOSED - CURRENTRELEASEdkliban@redhat.com

Actions
Task #3993: Add view for handling /v2 enpointCLOSED - CURRENTRELEASEdkliban@redhat.com

Actions
Task #3994: Add view to support /v2/<some/path>/manifests/<manifest-identifier> endpointCLOSED - CURRENTRELEASEdkliban@redhat.com

Actions
Task #3995: Add view to support /v2/<some/path>/blobs/sha256:<sha256 checksum> endpointCLOSED - CURRENTRELEASEdkliban@redhat.com

Actions

Also available in: Atom PDF