Description of problem:
The /etc/containers/registries.conf file is not configured to search registry.access.redhat.com so UBI and RHEL image pulls fail without authentication. We need this "unauthenticated" registry available for UBI in particular.
Version-Release number of selected component (if applicable):
Go Version: go1.11.5
Steps to Reproduce:
1. [root@rhel8 registries.d]# podman pull ubi8
Trying to pull registry.redhat.io/ubi8:latest...Failed
Trying to pull quay.io/ubi8:latest...Failed
Trying to pull docker.io/ubi8:latest...Failed
error pulling image "ubi8": unable to pull ubi8: 3 errors occurred:
* Error determining manifest MIME type for docker://registry.redhat.io/ubi8:latest: unable to retrieve auth token: invalid username/password
* Error determining manifest MIME type for docker://quay.io/ubi8:latest: Error reading manifest latest in quay.io/ubi8: error parsing HTTP 404 response body: invalid character '<' looking for beginning of value: "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 3.2 Final//EN\">\n<title>404 Not Found</title>\n<h1>Not Found</h1>\n<p>The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again.</p>\n"
* Error determining manifest MIME type for docker://ubi8:latest: Error reading manifest latest in docker.io/library/ubi8: errors:
denied: requested access to the resource is denied
unauthorized: authentication required
Find and pull the image and cache it locally like normal.
> The /etc/containers/registries.conf file is not configured to search registry.access.redhat.com
Isn't that registry deprecated? Why would we want to search it by default?
It was brought back from the Brink. UBI saved it. We force users of registry.redhat.io to have a Red Hat license to access it,
But registry.access.redhat.com is open to anyone.
Since we want everyone to use UBI, we need to leave it on an Open Registry.
Dan, is dead on. registry.redhat.io and registry.access.redhat.com are both backended by pulp, but moving to quay.io. Until registry.redhat.io moves to quay, we won't be able to support "unauthenticated" repositories for UBI. Even after we do eventually migrate (no timeline today), we will put redirects in place to make sure that registry.access.redhat.com doesn't break until the end of the RHEL 8 lifecycle. Where people get images from is sort of assumed to be part of the value prop of a long lifecycle of RHEL. AKA, people's stuff shouldn't break...
Can reproduce with podman-0.10.1.3-5.gitdb08685.el8+2131+7e3e9e07.x86_64. Test with podman-1.4.2-5.module+el8.1.0+4240+893c1ab8.x86_64, it works as expect. Details:
# podman pull ubi8
Trying to pull registry.redhat.io/ubi8...ERRO Error pulling image ref //registry.redhat.io/ubi8:latest: Error initializing source docker://registry.redhat.io/ubi8:latest: unable to retrieve auth token: invalid username/password
Trying to pull registry.access.redhat.com/ubi8...Getting image source signatures
Copying blob c65691897a4d done
Copying blob 641d7cc5cbc4 done
Copying config 11f9dba4d1 done
Writing manifest to image destination
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.