Bug 1246265

Summary: Cannot provision Docker container straight from an external Red Hat registry
Product: Red Hat Satellite Reporter: Og Maciel <omaciel>
Component: Container ManagementAssignee: Partha Aji <paji>
Status: CLOSED WONTFIX QA Contact: Katello QA List <katello-qa-list>
Severity: medium Docs Contact:
Priority: unspecified    
Version: UnspecifiedCC: bbuckingham, bkearney, cbredesen, cwelton, jgreguske
Target Milestone: UnspecifiedKeywords: ReleaseNotes, Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-01-13 19:44:45 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1190823    

Description Og Maciel 2015-07-23 20:30:20 UTC
Description of problem:

The issue is related to trying to provision a new Docker container by going directly to the Red Hat registry (akin to going straight to Docker Registry hub). Once you've gone through the new container wizard, the provisioning process fails with no indication in the UI as to what has happened. In /var/log/messages one sees:

Jul 23 16:11:52 ibm-x3250m4-06 docker: v1 ping attempt failed with error: Get https://registry.access.redhat.com:/v1/_ping: dial tcp 10.4.164.31:0: connection refused. If this private registry supports only HTTP or HTTPS with an unknown CA certificate, please add `--insecure-registry registry.access.redhat.com:` to the daemon's arguments. In the case of HTTPS, if you have access to the registry's CA certificate, no need for the flag; simply place the CA certificate at /etc/docker/certs.d/registry.access.redhat.com:/ca.crt


Version-Release number of selected component (if applicable):

* Satellite 6.1.1. SNAP 13

How reproducible:


Steps to Reproduce:
1. Create a new container Registry pointing at http://registry.access.redhat.com
2. Create a new Docker compute resource (I used my own satellite for this using the instructions from the official Satellite 6.1 User Guide (Chapter 8) 
3. Create a new Docker container, choosing the Registry option from the Wizard and selecting the Red Hat registry

Actual results:

Once you have gone through the wizard, and click the Submit button, nothing happens

Expected results:


Additional info:

==> /var/log/messages <==
Jul 23 16:11:52 ibm-x3250m4-06 docker: time="2015-07-23T16:11:52-04:00" level=info msg="POST /v1.18/images/create?fromImage=registry.access.redhat.com%3A%2Frhel6.5%3Alatest"
Jul 23 16:11:52 ibm-x3250m4-06 docker: time="2015-07-23T16:11:52-04:00" level=info msg="+job pull(registry.access.redhat.com:/rhel6.5, latest)"
Jul 23 16:11:52 ibm-x3250m4-06 docker: time="2015-07-23T16:11:52-04:00" level=info msg="+job resolve_repository(registry.access.redhat.com:/rhel6.5)"
Jul 23 16:11:52 ibm-x3250m4-06 docker: time="2015-07-23T16:11:52-04:00" level=info msg="-job resolve_repository(registry.access.redhat.com:/rhel6.5) = OK (0)"
Jul 23 16:11:52 ibm-x3250m4-06 docker: invalid registry endpoint https://registry.access.redhat.com:/v0/: unable to ping registry endpoint https://registry.access.redhat.com:/v0/
Jul 23 16:11:52 ibm-x3250m4-06 docker: v2 ping attempt failed with error: Get https://registry.access.redhat.com:/v2/: dial tcp 10.4.164.31:0: connection refused
Jul 23 16:11:52 ibm-x3250m4-06 docker: v1 ping attempt failed with error: Get https://registry.access.redhat.com:/v1/_ping: dial tcp 10.4.164.31:0: connection refused. If this private registry supports only HTTP or HTTPS with an unknown CA certificate, please add `--insecure-registry registry.access.redhat.com:` to the daemon's arguments. In the case of HTTPS, if you have access to the registry's CA certificate, no need for the flag; simply place the CA certificate at /etc/docker/certs.d/registry.access.redhat.com:/ca.crt
Jul 23 16:11:52 ibm-x3250m4-06 docker: time="2015-07-23T16:11:52-04:00" level=info msg="-job pull(registry.access.redhat.com:/rhel6.5, latest) = ERR (1)"
Jul 23 16:11:52 ibm-x3250m4-06 docker: time="2015-07-23T16:11:52-04:00" level=error msg="Handler for POST /images/create returned error:  v1 ping attempt failed with error: Get https://registry.access.redhat.com:/v1/_ping: dial tcp 10.4.164.31:0: connection refused. If this private registry supports only HTTP or HTTPS with an unknown CA certificate, please add `--insecure-registry registry.access.redhat.com:` to the daemon's arguments. In the case of HTTPS, if you have access to the registry's CA certificate, no need for the flag; simply place the CA certificate at /etc/docker/certs.d/registry.access.redhat.com:/ca.crt"
Jul 23 16:11:52 ibm-x3250m4-06 docker: time="2015-07-23T16:11:52-04:00" level=error msg="HTTP Error: statusCode=500  v1 ping attempt failed with error: Get https://registry.access.redhat.com:/v1/_ping: dial tcp 10.4.164.31:0: connection refused. If this private registry supports only HTTP or HTTPS with an unknown CA certificate, please add `--insecure-registry registry.access.redhat.com:` to the daemon's arguments. In the case of HTTPS, if you have access to the registry's CA certificate, no need for the flag; simply place the CA certificate at /etc/docker/certs.d/registry.access.redhat.com:/ca.crt"

Comment 1 Og Maciel 2015-07-23 20:35:01 UTC
Interesting that if one uses https and not http, then the above scenario works. Since this is something different from what used to work before, I'm asking DEV for help to determine if this needs to be changed to a DOCs issue or release notes?

Comment 6 Jay Greguske 2016-04-06 13:01:27 UTC
Not sure who Jeff is, but passing the buck to Chris Bredesen! The public volume we use for serving out docker content is only available over https, but I don't know the reason why. https is a good idea in general, but maybe Chris can explain the business reasons better than I.

Comment 7 Chris Bredesen 2016-04-06 17:46:21 UTC
You should not be able to talk to a registry with modern Docker clients over HTTP without --insecure-registry. Why are we trying to do this? It isn't clear to me from my first read of this BZ....

Comment 8 David O'Brien 2016-04-18 00:47:55 UTC
Reset docs contact <> daobrien

Comment 9 Bryan Kearney 2017-01-13 19:44:45 UTC
This is an older bug which I do not envision being addressed in the near term. I am closing this out. If you believe doing so is an issue, please feel free to re-open and provide additional business information. Thank you.