The top-level `docker deploy` command (using the "Docker Application Bundle" (`.dab`) file format was introduced as an experimental feature in Docker 1.13 / 17.03, but superseded by support for Docker Compose files. With no development being done on this feature, and no active use of the file format, support for the DAB file format and the top-level `docker deploy` command (hidden by default in 19.03), is removed in this patch, in favour of `docker stack deploy` using compose files. Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
120 lines
4.3 KiB
Markdown
120 lines
4.3 KiB
Markdown
---
|
|
title: "stack deploy"
|
|
description: "The stack deploy command description and usage"
|
|
keywords: "stack, deploy, up"
|
|
---
|
|
|
|
<!-- This file is maintained within the docker/cli GitHub
|
|
repository at https://github.com/docker/cli/. Make all
|
|
pull requests against that repo. If you see this file in
|
|
another repository, consider it read-only there, as it will
|
|
periodically be overwritten by the definitive file. Pull
|
|
requests which include edits to this file in other repositories
|
|
will be rejected.
|
|
-->
|
|
|
|
# stack deploy
|
|
|
|
```markdown
|
|
Usage: docker stack deploy [OPTIONS] STACK
|
|
|
|
Deploy a new stack or update an existing stack
|
|
|
|
Aliases:
|
|
deploy, up
|
|
|
|
Options:
|
|
-c, --compose-file strings Path to a Compose file, or "-" to read from stdin
|
|
--help Print usage
|
|
--kubeconfig string Kubernetes config file
|
|
--namespace string Kubernetes namespace to use
|
|
--orchestrator string Orchestrator to use (swarm|kubernetes|all)
|
|
--prune Prune services that are no longer referenced
|
|
--resolve-image string Query the registry to resolve image digest and supported platforms
|
|
("always"|"changed"|"never") (default "always")
|
|
--with-registry-auth Send registry authentication details to Swarm agents
|
|
```
|
|
|
|
## Description
|
|
|
|
Create and update a stack from a `compose` file on the swarm. This command has to
|
|
be run targeting a manager node.
|
|
|
|
## Examples
|
|
|
|
### Compose file
|
|
|
|
The `deploy` command supports compose file version `3.0` and above.
|
|
|
|
```bash
|
|
$ docker stack deploy --compose-file docker-compose.yml vossibility
|
|
|
|
Ignoring unsupported options: links
|
|
|
|
Creating network vossibility_vossibility
|
|
Creating network vossibility_default
|
|
Creating service vossibility_nsqd
|
|
Creating service vossibility_logstash
|
|
Creating service vossibility_elasticsearch
|
|
Creating service vossibility_kibana
|
|
Creating service vossibility_ghollector
|
|
Creating service vossibility_lookupd
|
|
```
|
|
|
|
The Compose file can also be provided as standard input with `--compose-file -`:
|
|
|
|
```bash
|
|
$ cat docker-compose.yml | docker stack deploy --compose-file - vossibility
|
|
|
|
Ignoring unsupported options: links
|
|
|
|
Creating network vossibility_vossibility
|
|
Creating network vossibility_default
|
|
Creating service vossibility_nsqd
|
|
Creating service vossibility_logstash
|
|
Creating service vossibility_elasticsearch
|
|
Creating service vossibility_kibana
|
|
Creating service vossibility_ghollector
|
|
Creating service vossibility_lookupd
|
|
```
|
|
|
|
If your configuration is split between multiple Compose files, e.g. a base
|
|
configuration and environment-specific overrides, you can provide multiple
|
|
`--compose-file` flags.
|
|
|
|
```bash
|
|
$ docker stack deploy --compose-file docker-compose.yml -c docker-compose.prod.yml vossibility
|
|
|
|
Ignoring unsupported options: links
|
|
|
|
Creating network vossibility_vossibility
|
|
Creating network vossibility_default
|
|
Creating service vossibility_nsqd
|
|
Creating service vossibility_logstash
|
|
Creating service vossibility_elasticsearch
|
|
Creating service vossibility_kibana
|
|
Creating service vossibility_ghollector
|
|
Creating service vossibility_lookupd
|
|
```
|
|
|
|
You can verify that the services were correctly created:
|
|
|
|
```bash
|
|
$ docker service ls
|
|
|
|
ID NAME MODE REPLICAS IMAGE
|
|
29bv0vnlm903 vossibility_lookupd replicated 1/1 nsqio/nsq@sha256:eeba05599f31eba418e96e71e0984c3dc96963ceb66924dd37a47bf7ce18a662
|
|
4awt47624qwh vossibility_nsqd replicated 1/1 nsqio/nsq@sha256:eeba05599f31eba418e96e71e0984c3dc96963ceb66924dd37a47bf7ce18a662
|
|
4tjx9biia6fs vossibility_elasticsearch replicated 1/1 elasticsearch@sha256:12ac7c6af55d001f71800b83ba91a04f716e58d82e748fa6e5a7359eed2301aa
|
|
7563uuzr9eys vossibility_kibana replicated 1/1 kibana@sha256:6995a2d25709a62694a937b8a529ff36da92ebee74bafd7bf00e6caf6db2eb03
|
|
9gc5m4met4he vossibility_logstash replicated 1/1 logstash@sha256:2dc8bddd1bb4a5a34e8ebaf73749f6413c101b2edef6617f2f7713926d2141fe
|
|
axqh55ipl40h vossibility_vossibility-collector replicated 1/1 icecrime/vossibility-collector@sha256:f03f2977203ba6253988c18d04061c5ec7aab46bca9dfd89a9a1fa4500989fba
|
|
```
|
|
|
|
## Related commands
|
|
|
|
* [stack ls](stack_ls.md)
|
|
* [stack ps](stack_ps.md)
|
|
* [stack rm](stack_rm.md)
|
|
* [stack services](stack_services.md)
|