Unable to pull docker images using HTTP - insecure registries configured

In the docker client server, I am getting the following error when trying to pull docker images:

ERROR: failed to solve: failed to do request: Head “”: http: server gave HTTP response to HTTPS client

In the client, I have configured the /etc/docker/daemon.json as follows:

	"features": {
		"buildkit": true
	"insecure-registries": [
	"registry-mirrors": [

For the nexus docker container (version 3.43.0-01) on the server these ports are mapped:>8181/tcp,>8081/tcp

In the Repositories, I have a docker group

HTTP is checked with port 8181
HTTPs is unchecked
Allow Anonymous docker pull is checked.

In group members, I have dockerhub-proxy

For the dockerhub-proxy
I have the URL http://serverhostname:5555/repository/dockerhub-proxy/
HTTP and HTTPs are empty - no ports here.
Allow Anonymous docker pull is checked.
Remote storage: https://registry-1.docker.io
And I selected use dockerhub.

In the Active Realms - I have Docker Bearer Token Realm.

Did you configure Nexus to serve HTTPS?


No, I didn’t want to use HTTPS. That’s why I am using insecure-registries. Is using HTTPS required for Docker? Because for pip and apt repositories, I am not using any HTTPS.

This message suggests that Nexus is using HTTP but Docker is expecting HTTPS.

It should be possible to configure the Docker client to talk to an insecure registry, although they do have limitations - Test an insecure registry

This may be a better question for the Docker CLI maintainers as this looks like a client configuration problem.