How to use 'docker stack deploy' in my remote client?

I wonder how to use ‘docker stack deploy’ from remote client.
In my environment of docker, there is space to share from host and save yml file from a specific container. Also, the container can request docker engine remote api using DOCKER_HOST value(tcp). But there is no way to call ‘docker stack deploy’ it opens only for docker cli.
Is there a way to use the docker stack command from remote client?
I think, there is a few way to tackle.

  1. using docker client which should be seen from container
  2. parsing yml in container and judge what server it has and call ‘create service remote api’

and what else?

1 Like

I too am seeking how to deploy a stack through the API, at the moment it seems that is only possible to create and update individual services via the API. Maybe that will change in the upcoming releases…?

1 Like

I’m also needing this desperately. At the moment you have ssh onto the swarm master, get the latest version of the stack compose file there (via scp or git pull), and then issue a command. That’s just a crazy way to expect people to deploy/update numerous stacks on a swarm.

1 Like

Currently, I’m also looking for smart solution to add it in the gitlab-ci for auto deploy, but still waiting for the better solution.
Did you find any solution, better than stated above?
I don’t prefer the solution, ssh, git pull, docker stack deploy