The Docker API spec v2 cites pagination as supported feature for the tags/list responses
Paginated tag results can be retrieved by adding the appropriate parameters to the request URL described above. The behavior of tag pagination is identical to that specified for catalog pagination. We cover a simple flow to highlight any differences.
Starting a paginated flow may begin as follows:
The above specifies that a tags response should be returned, from the start of the result set, ordered lexically, limiting the number of results to n. The response to such a request would look as follows:
To get the next result set, a client would issue the request as follows, using the value encoded in the RFC5988 Link header:
The above process should then be repeated until the Link header is no longer set in the response. The behavior of the last parameter, the provided response result, lexical ordering and encoding of the Link header are identical to that of catalog pagination.
NXRM outbound docker requests do not seem to support pagination, and as such when asking NXRM to list all docker tags for an image that a remote provides via pagination, NXRM will return only a partial list of tags, those on the first page.
This lists all tags, because skopeo will follow every Link header until quay.io does not return any more:
However if NXRM proxies https://quay.io, and skopeo uses NXRM, then only a partial list of tags is returned to the client:
Provide a safe mechanism for NXRM as a Docker client to follow RFC5988 Link headers a remote may return to it as part of Docker API V2 spec, thus providing an equivalent experience that other Docker Clients will have if they implement Pagination talking directly to the remote registry.