As a user, I can sync from a v2 registry
The sync process should start by trying with the v2 API and fall back to the v1 API.
Details of the v2 API: https://github.com/docker/distribution/blob/release/2.0/docs/spec/api.md
For now, we can assume that we only get the manifest's digest from the header Docker-Content-Digest, which is theoretically optional. The upstream docker registry does provide it. In the future, we can add logic to the sync and upload workflows that calculates the digest if it's not available.
As of this writing, the docker hub does not yet implement the v2 API. The only available implementation is the upstream registry, which you can run locally with
docker run -p 5000:5000 registry:2
Then you can push a repository to it with a docker client.
- sync works with the v2 API
- sync creates both manifest and image units
- sync falls back to the v1 API
- Documentation / recipes
Updated by rbarlow almost 7 years ago
This module proves that users can sync from v2 registries: