Skip to content

Support for layer federation #88

@ncdc

Description

@ncdc

The registry should be able to serve some layers from a different server, if directed to do so. For example, an ISV builds on a Red Hat base image. The ISV layers are served from cdn.isv.com and the Red Hat layers are served from cdn.redhat.com.

Please see docker-archive/docker-registry#662 for some background information on this issue.

Pull

When pulling the layers associated with an image manifest, there should be enough information in the manifest to indicate the specific URL for each layer. For example:

$ docker pull isv/app
bef54b8f8a2f <- served from cdn.redhat.com
8da983e1fdd5 <- served from cdn.isv.com

Push

When pushing an image manifest, there should be some way to indicate different URLs for different layers. If you previously pulled a manifest with that information, it must be retained. It should also be possible to create a new manifest and alter the URL of certain layers. When pushing a layer whose URL differs from that of the registry, the registry should store the metadata about the layer, but the actual content of the layer would not be transmitted (it is assumed to already exist at the specified URL).

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions