docker stack ls

List stacks


$ docker stack ls [OPTIONS]

Refer to the options section for an overview of available OPTIONS for this command.


Lists the stacks.


This is a cluster management command, and must be executed on a swarm manager node. To learn about managers and workers, refer to the Swarm mode section in the documentation.

For example uses of this command, refer to the examples section below.


Name, shorthand Default Description
--all-namespaces deprecatedKubernetes
List stacks from all Kubernetes namespaces
--format Pretty-print stacks using a Go template
--namespace deprecatedKubernetes
Kubernetes namespaces to use
--kubeconfig deprecatedKubernetes
Kubernetes config file
--orchestrator deprecated
Orchestrator to use (swarm|kubernetes|all)


The following command shows all stacks and some additional information:

$ docker stack ls

ID                 SERVICES            ORCHESTRATOR
myapp              2                   Kubernetes
vossibility-stack  6                   Swarm

Format the output (--format)

The formatting option (--format) pretty-prints stacks using a Go template.

Valid placeholders for the Go template are listed below:

Placeholder Description
.Name Stack name
.Services Number of services
.Orchestrator Orchestrator name
.Namespace Namespace

When using the --format option, the stack ls command either outputs the data exactly as the template declares or, when using the table directive, includes column headers as well.

The following example uses a template without headers and outputs the Name and Services entries separated by a colon (:) for all stacks:

$ docker stack ls --format "{{.Name}}: {{.Services}}"
web-server: 1
web-cache: 4

Parent command

Command Description
docker stack Manage Docker stacks
Command Description
docker stack deploy Deploy a new stack or update an existing stack
docker stack ls List stacks
docker stack ps List the tasks in the stack
docker stack rm Remove one or more stacks
docker stack services List the services in the stack