<div dir="ltr">Not super familiar with the kolla docker part, but the code seems pretty straightforward.<div><br></div><div>What is the IP of your registry? I dont think you should use localhost as the tasks are running on the computes/controllers? Can you use the registry IP in the same subnet/reachable subnet?</div><div><br></div><div>Tracing the code</div><div><br></div><div><br>- name: Ensure fluentd image is present for label check<br>  vars:<br>    service_name: "fluentd"<br>    service: "{{ common_services[service_name] }}"<br>  become: true<br>  kolla_docker:<br>    action: "ensure_image"<br>    common_options: "{{ docker_common_options }}"<br>    image: "{{ service.image }}"<br>  when:<br>    - fluentd_version is not defined or fluentd_binary is not defined<br>    - enable_fluentd | bool<br></div><div><br></div><div><br></div><div>This calls</div><div><br></div><div>    def ensure_image(self):<br>        if not self.check_image():<br>            self.pull_image()<br></div><div><br></div><div>This then calls (if the image is not there)</div><div><br></div><div>    def pull_image(self):<br>        if self.params.get('auth_username'):<br>            self.dc.login(<br>                username=self.params.get('auth_username'),<br>                password=self.params.get('auth_password'),<br>                registry=self.params.get('auth_registry'),<br>                email=self.params.get('auth_email')<br>            )<br><br>        image, tag = self.parse_image()<br>        old_image_id = self.get_image_id()<br><br>        statuses = [<br>            json.loads(line.strip().decode('utf-8')) for line in self.dc.pull(<br>                repository=image, tag=tag, stream=True<br>            )<br>        ]<br><br>        for status in reversed(statuses):<br>            if 'error' in status:<br>                if status['error'].endswith('not found'):<br>                    self.module.fail_json(<br>                        msg="The requested image does not exist: {}:{}".format(<br>                            image, tag),<br>                        failed=True<br>                    )<br>                else:<br>                    self.module.fail_json(<br>                        msg="Unknown error message: {}".format(<br>                            status['error']),<br>                        failed=True<br>                    )<br><br>        new_image_id = self.get_image_id()<br>        self.changed = old_image_id != new_image_id<br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Feb 28, 2022 at 6:26 PM Laurent Dumont <<a href="mailto:laurentfdumont@gmail.com">laurentfdumont@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Can you pull from that registry manually? If that doesn't work, Kolla won't work either.</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Feb 28, 2022 at 6:47 AM A Monster <<a href="mailto:amonster369@gmail.com" target="_blank">amonster369@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">I'm getting the following error while trying to deploy openstack using kolla-ansible.<div>I've set up a local docker registry and enabled insecure registries in daemon.json file and I even tried to pull fluentd docker image but I still get the following error </div><div><br></div><div><span style="font-family:monospace;font-size:12px"><font color="#ff0000">TASK [common : Ensure fluentd image is present for label check]</font></span><br></div><div><span style="font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-0.068px;background-color:rgb(243,243,243)"><font color="#38761d">fatal: [localhost]: FAILED! => {"changed": true, "msg": "'Traceback (most recent call last):\\n  File \"/usr/local/lib/python3.6/site-packages/docker/api/client.py\", line 268, in _raise_for_status\\n    response.raise_for_status()\\n  File \"/usr/lib/python3.6/site-packages/requests/models.py\", line 940, in raise_for_status\\n    raise HTTPError(http_error_msg, response=self)\\nrequests.exceptions.HTTPError: 500 Server Error: Internal Server Error for url: http+docker://localhost/v1.41/images/create?tag=xena&fromImage=<a href="http://quay.io" target="_blank">quay.io</a>%2Fkolla%2Fcentos-source-fluentd\\n\\nDuring handling of the above exception, another exception occurred:\\n\\nTraceback (most recent call last):\\n  File \"/tmp/ansible_kolla_docker_payload_xizndx9s/ansible_kolla_docker_payload.zip/ansible/modules/kolla_docker.py\", line 1241, in main\\n  File \"/tmp/ansible_kolla_docker_payload_xizndx9s/ansible_kolla_docker_payload.zip/ansible/modules/kolla_docker.py\", line 1116, in ensure_image\\n  File \"/tmp/ansible_kolla_docker_payload_xizndx9s/ansible_kolla_docker_payload.zip/ansible/modules/kolla_docker.py\", line 692, in pull_image\\n  File \"/usr/local/lib/python3.6/site-packages/docker/api/image.py\", line 430, in pull\\n    self._raise_for_status(response)\\n  File \"/usr/local/lib/python3.6/site-packages/docker/api/client.py\", line 270, in _raise_for_status\\n    raise create_api_error_from_http_exception(e)\\n  File \"/usr/local/lib/python3.6/site-packages/docker/errors.py\", line 31, in create_api_error_from_http_exception\\n    raise cls(e, response=response, explanation=explanation)\\ndocker.errors.APIError: 500 Server Error for http+docker://localhost/v1.41/images/create?tag=xena&fromImage=<a href="http://quay.io" target="_blank">quay.io</a>%2Fkolla%2Fcentos-source-fluentd: Internal Server Error (\"unauthorized: access to the requested resource is not authorized\")\\n'"}</font></span><br></div></div>
</blockquote></div>
</blockquote></div>