2017-07-20 04:32:51 -04:00
|
|
|
---
|
|
|
|
title: "service rollback"
|
|
|
|
description: "The service rollback command description and usage"
|
|
|
|
keywords: "service, rollback"
|
|
|
|
---
|
|
|
|
|
2017-10-04 13:03:55 -04:00
|
|
|
<!-- This file is maintained within the docker/cli GitHub
|
2017-07-20 04:32:51 -04:00
|
|
|
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.
|
|
|
|
-->
|
|
|
|
|
|
|
|
# service rollback
|
|
|
|
|
|
|
|
```markdown
|
|
|
|
Usage: docker service rollback SERVICE
|
|
|
|
|
|
|
|
Revert changes to a service's configuration
|
|
|
|
|
|
|
|
Options:
|
|
|
|
-d, --detach Exit immediately instead of waiting for the service to converge (default true)
|
|
|
|
--help Print usage
|
|
|
|
-q, --quiet Suppress progress output
|
|
|
|
```
|
|
|
|
|
|
|
|
## Description
|
|
|
|
|
2018-12-23 06:27:52 -05:00
|
|
|
Roll back a specified service to its previous version from the swarm.
|
|
|
|
|
|
|
|
> **Note**: 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](https://docs.docker.com/engine/swarm/) in the documentation.
|
2017-07-20 04:32:51 -04:00
|
|
|
|
|
|
|
## Examples
|
|
|
|
|
|
|
|
### Roll back to the previous version of a service
|
|
|
|
|
|
|
|
Use the `docker service rollback` command to roll back to the previous version
|
|
|
|
of a service. After executing this command, the service is reverted to the
|
|
|
|
configuration that was in place before the most recent `docker service update`
|
|
|
|
command.
|
|
|
|
|
|
|
|
The following example creates a service with a single replica, updates the
|
|
|
|
service to use three replicas, and then rolls back the service to the
|
|
|
|
previous version, having one replica.
|
|
|
|
|
|
|
|
Create a service with a single replica:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
$ docker service create --name my-service -p 8080:80 nginx:alpine
|
|
|
|
```
|
|
|
|
|
|
|
|
Confirm that the service is running with a single replica:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
$ docker service ls
|
|
|
|
|
|
|
|
ID NAME MODE REPLICAS IMAGE PORTS
|
|
|
|
xbw728mf6q0d my-service replicated 1/1 nginx:alpine *:8080->80/tcp
|
|
|
|
```
|
|
|
|
|
|
|
|
Update the service to use three replicas:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
$ docker service update --replicas=3 my-service
|
|
|
|
|
|
|
|
$ docker service ls
|
|
|
|
|
|
|
|
ID NAME MODE REPLICAS IMAGE PORTS
|
|
|
|
xbw728mf6q0d my-service replicated 3/3 nginx:alpine *:8080->80/tcp
|
|
|
|
```
|
|
|
|
|
|
|
|
Now roll back the service to its previous version, and confirm it is
|
|
|
|
running a single replica again:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
$ docker service rollback my-service
|
|
|
|
|
|
|
|
$ docker service ls
|
|
|
|
|
|
|
|
ID NAME MODE REPLICAS IMAGE PORTS
|
|
|
|
xbw728mf6q0d my-service replicated 1/1 nginx:alpine *:8080->80/tcp
|
|
|
|
```
|
|
|
|
|
|
|
|
## Related commands
|
|
|
|
|
|
|
|
* [service create](service_create.md)
|
|
|
|
* [service inspect](service_inspect.md)
|
|
|
|
* [service logs](service_logs.md)
|
|
|
|
* [service ls](service_ls.md)
|
|
|
|
* [service ps](service_ps.md)
|
|
|
|
* [service rm](service_rm.md)
|
|
|
|
* [service scale](service_scale.md)
|
|
|
|
* [service update](service_update.md)
|