On this page
docker stack services
Description
List the services in the stack
API 1.25+ The client and daemon API must both be at least 1.25 to use this command. Use the docker version command on the client to check your client and daemon API versions.
Usage
docker stack services [OPTIONS] STACK
Options
| Name, shorthand | Default | Description |
--filter , -f |
Filter output based on conditions provided | |
--format |
Pretty-print services using a Go template | |
--namespace |
Kubernetes Kubernetes namespace to use |
|
--quiet , -q |
Only display IDs | |
--kubeconfig |
Kubernetes Kubernetes config file |
|
--orchestrator |
Orchestrator to use (swarm|kubernetes|all) |
Parent command
| Command | Description |
|---|---|
| docker stack | Manage Docker stacks |
Related commands
| 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 |
Extended description
Lists the services that are running as part of the specified stack. This command has to be run targeting a manager node.
Examples
The following command shows all services in the myapp stack:
$ docker stack services myapp
ID NAME REPLICAS IMAGE COMMAND
7be5ei6sqeye myapp_web 1/1 nginx@sha256:23f809e7fd5952e7d5be065b4d3643fbbceccd349d537b62a123ef2201bc886f
dn7m7nhhfb9y myapp_db 1/1 mysql@sha256:a9a5b559f8821fe73d58c3606c812d1c044868d42c63817fa5125fd9d8b7b539
Filtering
The filtering flag (-f or --filter) format is a key=value pair. If there is more than one filter, then pass multiple flags (e.g. --filter "foo=bar" --filter "bif=baz"). Multiple filter flags are combined as an OR filter.
The following command shows both the web and db services:
$ docker stack services --filter name=myapp_web --filter name=myapp_db myapp
ID NAME REPLICAS IMAGE COMMAND
7be5ei6sqeye myapp_web 1/1 nginx@sha256:23f809e7fd5952e7d5be065b4d3643fbbceccd349d537b62a123ef2201bc886f
dn7m7nhhfb9y myapp_db 1/1 mysql@sha256:a9a5b559f8821fe73d58c3606c812d1c044868d42c63817fa5125fd9d8b7b539
The currently supported filters are:
- id / ID (
--filter id=7be5ei6sqeye, or--filter ID=7be5ei6sqeye)- Swarm: supported
- Kubernetes: not supported
- label (
--filter label=key=value)- Swarm: supported
- Kubernetes: supported
- mode (
--filter mode=replicated, or--filter mode=global)- Swarm: not supported
- Kubernetes: supported
- name (
--filter name=myapp_web)- Swarm: supported
- Kubernetes: supported
- node (
--filter node=mynode)- Swarm: not supported
- Kubernetes: supported
- service (
--filter service=web)- Swarm: not supported
- Kubernetes: supported
Formatting
The formatting options (--format) pretty-prints services output using a Go template.
Valid placeholders for the Go template are listed below:
| Placeholder | Description |
|---|---|
.ID |
Service ID |
.Name |
Service name |
.Mode |
Service mode (replicated, global) |
.Replicas |
Service replicas |
.Image |
Service image |
When using the --format option, the stack services command will either output 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 ID, Mode, and Replicas entries separated by a colon for all services:
$ docker stack services --format "{{.ID}}: {{.Mode}} {{.Replicas}}"
0zmvwuiu3vue: replicated 10/10
fm6uf97exkul: global 5/5
© 2019 Docker, Inc.
Licensed under the Apache License, Version 2.0.
Docker and the Docker logo are trademarks or registered trademarks of Docker, Inc. in the United States and/or other countries.
Docker, Inc. and other parties may also have trademark rights in other terms used herein.
https://docs.docker.com/v18.09/engine/reference/commandline/stack_services/