4

I am trying to deploy a docker swarm using Digital Ocean's docker-machine driver.

This is currently a single node that contains several public DockerHub images, and one private.

I am having difficulties in configuring it to accept the private image properly.

I have SSHed into the node, and used docker login. After that, I was able to properly docker pull the private image.

But, when trying to run docker stack deploy -c myapp.yml myapp, I am getting this warning:

image me/myapp:latest could not be accessed on a registry to record
its digest. Each node will access me/myapp:latest independently,
possibly leading to different nodes running different versions of the image.

What do I need to do to properly login to a private registry in docker swarm mode?

DannyB
  • 141
  • 1
  • 2

2 Answers2

3

You need the --with-registry-auth flag, e.g.:

docker stack deploy -c myapp.yml --with-registry-auth myapp

From the docker stack deploy --help output:

--with-registry-auth     Send registry authentication details to Swarm agents 
BMitch
  • 3,568
  • 12
  • 18
0

first you need to do docker login to repo then you do stack deploy with --with-registry-auth flag.

KiranM
  • 1