Unable to find docker image locally

MacosDockerDocker Run

Macos Problem Overview


I was following this post - the reference code is on GitHub. I have cloned the repository on my local.

The project has got a react app inside it. I'm trying to run it on my local following step 7 on the same post:

docker run -p 8080:80 shakyshane/cra-docker

This returns:

Unable to find image 'shakyshane/cra-docker:latest' locally
docker: Error response from daemon: pull access denied for shakyshane/cra-docker, repository does not exist or may require 'docker login'.
See 'docker run --help'.

I tried login to docker again but looks like since it belongs to @shakyShane I cannot access it.

I idiotically tried npm start too but it's not a simple react app running on node - it's in the container and containers are not controlled by npm

Looks like docker pull shakyshane/cra-docker:latest throws this:

Error response from daemon: pull access denied for shakyshane/cra-docker, repository does not exist or may require 'docker login'

So the question is how do I run this docker image on my local mac machine?

Macos Solutions


Solution 1 - Macos

>Well this is anti-logical but still sharing so future people like me don't get stuck

So the problem was that I was trying to run a docker image which doesn't exist.

I needed to build the image:

docker build . -t xameeramir/cra-docker

And then run it:

docker run -p 8080:80 xameeramir/cra-docker

Solution 2 - Macos

In my case, my image had TAG specified with it and I was not using it.

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
testimage          testtag            189b7354c60a        13 hours ago        88.3MB

Unable to find image 'testimage:latest' locally for this command docker run testimage

So specifying tag like this - docker run testimage:testtag worked for me

Solution 3 - Macos

I received this error message when I typed the name/character wrong. That is, "name1\name2" instead of "name1/name2" (wrong slash).

Solution 4 - Macos

In my case, the docker image did exist on the system and still I couldn't run the container locally, so I used the exact image ID instead of image name and tag, like this:

docker run myContainer c29150c8588e

Solution 5 - Macos

Posting my solution since non of the above worked. Working on macbook M1 pro.

The issue I had is that the image was built as arm/64. And I was running the command:

docker run --platform=linux/amd64 ...

So I had to build the image for amd/64 platform in order to run it.

Command below:

docker buildx build --platform=linux/amd64 ...

In conclusion your docker image platform and docker run platform needs to be the same from what I experienced.

Solution 6 - Macos

In my case, I saw this error when I had logged in to the dockerhub in my docker desktop. The repo I was pulling was local to my enterprise. Once i logged out of dockerhub, the pull worked.

Solution 7 - Macos

This just happened to me because my local docker vm on macos ran out of disk space.

I just deleted some old images using docker image prune and it started working correctly again.

Solution 8 - Macos

shakyshane/cra-docker Does not exist in that user's repo https://hub.docker.com/u/shakyshane/

Solution 9 - Macos

The problem is you are trying to run an imagen that does not exists. If you are executing a Dockerfile, the image was not created until Dockerfile pass with no errors; so when Dockerfile tries to run the image, it can't find it. Be sure you have no errors in the execution of your scripts.

Solution 10 - Macos

The simplest answer can be the correct one!.. make sure you have permissions to execute the command, use:

sudo docker run -p 8080:80 shakyshane/cra-docker

Solution 11 - Macos

In my case, I didn't realise there was a difference between docker run and docker start, and I kept using the run command when I should've been using the start command.

FYI, run is for building and creating the docker container, start is to just start a stopped container

Solution 12 - Macos

You can list all tags in CLI with this command:

docker image list

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionxameeramirView Question on Stackoverflow
Solution 1 - MacosxameeramirView Answer on Stackoverflow
Solution 2 - MacosNinad PingaleView Answer on Stackoverflow
Solution 3 - MacosCryptcView Answer on Stackoverflow
Solution 4 - MacosLeila TalebzadehView Answer on Stackoverflow
Solution 5 - MacosMaster YiView Answer on Stackoverflow
Solution 6 - MacoscodesterView Answer on Stackoverflow
Solution 7 - MacosClintmView Answer on Stackoverflow
Solution 8 - MacosRichard BarberView Answer on Stackoverflow
Solution 9 - MacosJulian MacagnoView Answer on Stackoverflow
Solution 10 - MacosIsrael Camacho RiveraView Answer on Stackoverflow
Solution 11 - MacosAdhamView Answer on Stackoverflow
Solution 12 - MacosAlexandru CristianView Answer on Stackoverflow