docker service create doesn't find image

When I run docker service create –mode global foo myrepo/foo-img:0.1, it works in that it starts the service, but if foo-img:0.1 does not exist on a node in the swarm, that node emits the following error:

<containerid>   \_ foo    myrepo/foo:0.1  <snip>  "No such image: myrepo/foo-img:0.1"

If I pull myrepo/foo-img:0.1 on each node then it works fine.

  • How to use yml file generated by anisible-container
  • Setting Docker Variables
  • net_adm:ping from one container to another
  • Upgrade docker container to latest image
  • Why are Docker build commands running so slow in Elastic Beanstalk?
  • Dokku deployment issue unable to select build pack
  • Is there a workaround for this other than pulling the image on each node in the swarm?

  • How does docker work along with IBM WebSphere?
  • set PHP path from host to docker container
  • How to have login and access settings with a docker image registry
  • how can i launch the kafka scheduler using marathon in minimesos?
  • how to choose pxe setup in deploying OPNFV ARNO via Fuel (master node)?
  • How to launch a new docker container from inside a docker container on openshift
  • One Solution collect form web for “docker service create doesn't find image”

    The answer is actually pretty simple. Use the--with-registry-auth parameter. This parameter uses the same authentication that is used for your current session. So, to make this work you simply:

    # docker login -u xxx -pass yyy
    # service create --with-registry-auth foo

    Assuming that you successfully logged in, the service will pull the image from the repo to each node as needed. Not sure exactly what happens behind the scenes, but it works for deploying to all nodes currently in the cluster! Thanks to the help from the folks at github/docker!

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.