(When you get an error and wish to show an image, would you also supply a text version (or supply a text version instead)? It is really helpful to other folks if text is supplied as text; this is compatible with clipboards, screen-readers, and search engines.)
What you could do to debug this is to do docker images after the build, so that if you get the “no such image” error again, you can at least compare that with what Docker does believe it has.
I’d figure out why docker pull is hanging because I believe you’d need that to work.
As you suggested, I believe the problem is that the image tag isn’t always available on the machine running the job. A combination of using Docker Layer Cache, a premium CircleCI feature, and docker pull will ensure that the image is available locally so that the regular tagging will work.
As Halfer mentioned, using docker images to output the list, perhaps with grep, should confirm this.