When accessing the remote repository in Artifactory linked to the ECR repository containing around 150-200 tags for a specific Docker image, we notice a limitation in listing all tags through the JFrog docker list API and we can get only 100 tags.
From the logs we can observe the below entries by adding the docker debug loggers when we try to retrieve the tags more than 100.
2024-04-01T11:48:31.704Z [jfrt ] [DEBUG] [7533e6171eeef1b3] [ckerV2RemoteGetTagsHandler:195] [http-nio-8081-exec-3] - Fetching catalog from remote - iteration number 1 out of 0 2024-04-01T11:48:32.437Z [jfrt ] [DEBUG] [7533e6171eeef1b3] [ckerV2RemoteGetTagsHandler:239] [http-nio-8081-exec-3] - Fetching tags from remote - 100 Items were added to the cache 2024-04-01T11:48:32.438Z [jfrt ] [DEBUG] [7533e6171eeef1b3] [ckerV2RemoteGetTagsHandler:195] [http-nio-8081-exec-3] - Fetching catalog from remote - iteration number 2 out of 0 2024-04-01T11:48:32.463Z [jfrt ] [WARN ] [7533e6171eeef1b3] [ckerV2RemoteGetTagsHandler:222] [http-nio-8081-exec-3] - Unable to fetch tags for 'test-uj/main-images': '123456.dkr.ecr.amazonaws.comhttps: Name or service not known' 2024-04-01T11:48:32.464Z [jfrt ] [DEBUG] [7533e6171eeef1b3] [ckerV2RemoteGetTagsHandler:223] [http-nio-8081-exec-3] - Unable to fetch tags: 123456.dkr.ecr.amazonaws.comhttps: Name or service not known java.net.UnknownHostException: 123456.dkr.ecr.amazonaws.comhttps: Name or service not known at java.base/java.net.Inet4AddressImpl.lookupAllHostAddr(Native Method)
Artifactory anticipates a relative URL in the Link header when executing the tags/list API. While this setup operates smoothly with the majority of Docker registries, certain registries deviate by furnishing full URLs. Consequently, Artifactory encounters difficulty in traversing these links. Since Artifactory doesn't proceed to subsequent pages of the tags list, only the initial page gets included.
An Internal JIRA ticket, RTDEV-41630, has been created to address this matter, and a solution will be included in one of the upcoming versions of Artifactory. To stay updated on the progress and details of the fix, you can monitor the Artifactory Release Notes for the specific version containing the resolution for this JIRA.