mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
Merge pull request #25034 from thaJeztah/update-swarm-usage
Update usage of "Swarm" for consistency
This commit is contained in:
commit
c388a5bdfa
16 changed files with 73 additions and 75 deletions
|
@ -42,16 +42,16 @@ const (
|
|||
)
|
||||
|
||||
// ErrNoSwarm is returned on leaving a cluster that was never initialized
|
||||
var ErrNoSwarm = fmt.Errorf("This node is not part of swarm")
|
||||
var ErrNoSwarm = fmt.Errorf("This node is not part of a swarm")
|
||||
|
||||
// ErrSwarmExists is returned on initialize or join request for a cluster that has already been activated
|
||||
var ErrSwarmExists = fmt.Errorf("This node is already part of a swarm cluster. Use \"docker swarm leave\" to leave this cluster and join another one.")
|
||||
var ErrSwarmExists = fmt.Errorf("This node is already part of a swarm. Use \"docker swarm leave\" to leave this swarm and join another one.")
|
||||
|
||||
// ErrPendingSwarmExists is returned on initialize or join request for a cluster that is already processing a similar request but has not succeeded yet.
|
||||
var ErrPendingSwarmExists = fmt.Errorf("This node is processing an existing join request that has not succeeded yet. Use \"docker swarm leave\" to cancel the current request.")
|
||||
|
||||
// ErrSwarmJoinTimeoutReached is returned when cluster join could not complete before timeout was reached.
|
||||
var ErrSwarmJoinTimeoutReached = fmt.Errorf("Timeout was reached before node was joined. Attempt to join the cluster will continue in the background. Use \"docker info\" command to see the current swarm status of your node.")
|
||||
var ErrSwarmJoinTimeoutReached = fmt.Errorf("Timeout was reached before node was joined. The attempt to join the swarm will continue in the background. Use the \"docker info\" command to see the current swarm status of your node.")
|
||||
|
||||
// defaultSpec contains some sane defaults if cluster options are missing on init
|
||||
var defaultSpec = types.Spec{
|
||||
|
@ -519,24 +519,24 @@ func (c *Cluster) Leave(force bool) error {
|
|||
}
|
||||
|
||||
if node.Manager() != nil && !force {
|
||||
msg := "You are attempting to leave cluster on a node that is participating as a manager. "
|
||||
msg := "You are attempting to leave the swarm on a node that is participating as a manager. "
|
||||
if c.isActiveManager() {
|
||||
active, reachable, unreachable, err := c.managerStats()
|
||||
if err == nil {
|
||||
if active && reachable-2 <= unreachable {
|
||||
if reachable == 1 && unreachable == 0 {
|
||||
msg += "Removing the last manager will erase all current state of the cluster. Use `--force` to ignore this message. "
|
||||
msg += "Removing the last manager erases all current state of the swarm. Use `--force` to ignore this message. "
|
||||
c.Unlock()
|
||||
return fmt.Errorf(msg)
|
||||
}
|
||||
msg += fmt.Sprintf("Leaving the cluster will leave you with %v managers out of %v. This means Raft quorum will be lost and your cluster will become inaccessible. ", reachable-1, reachable+unreachable)
|
||||
msg += fmt.Sprintf("Removing this node leaves %v managers out of %v. Without a Raft quorum your swarm will be inaccessible. ", reachable-1, reachable+unreachable)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
msg += "Doing so may lose the consensus of your cluster. "
|
||||
}
|
||||
|
||||
msg += "The only way to restore a cluster that has lost consensus is to reinitialize it with `--force-new-cluster`. Use `--force` to ignore this message."
|
||||
msg += "The only way to restore a swarm that has lost consensus is to reinitialize it with `--force-new-cluster`. Use `--force` to suppress this message."
|
||||
c.Unlock()
|
||||
return fmt.Errorf(msg)
|
||||
}
|
||||
|
|
|
@ -3323,7 +3323,7 @@ Instruct the driver to remove the network (`id`).
|
|||
|
||||
## 3.6 Nodes
|
||||
|
||||
**Note**: Nodes operations require to first be part of a Swarm.
|
||||
**Note**: Node operations require the engine to be part of a swarm.
|
||||
|
||||
### List nodes
|
||||
|
||||
|
@ -3573,12 +3573,12 @@ Return low-level information on the node `id`
|
|||
|
||||
## 3.7 Swarm
|
||||
|
||||
### Initialize a new Swarm
|
||||
### Initialize a new swarm
|
||||
|
||||
|
||||
`POST /swarm/init`
|
||||
|
||||
Initialize a new Swarm
|
||||
Initialize a new swarm
|
||||
|
||||
**Example request**:
|
||||
|
||||
|
@ -3607,7 +3607,7 @@ Initialize a new Swarm
|
|||
|
||||
- **200** – no error
|
||||
- **400** – bad parameter
|
||||
- **406** – node is already part of a Swarm
|
||||
- **406** – node is already part of a swarm
|
||||
|
||||
JSON Parameters:
|
||||
|
||||
|
@ -3621,9 +3621,9 @@ JSON Parameters:
|
|||
number, like `eth0:4567`. If the port number is omitted, the port number from the listen
|
||||
address is used. If `AdvertiseAddr` is not specified, it will be automatically detected when
|
||||
possible.
|
||||
- **ForceNewCluster** – Force creating a new Swarm even if already part of one.
|
||||
- **Spec** – Configuration settings of the new Swarm.
|
||||
- **Orchestration** – Configuration settings for the orchestration aspects of the Swarm.
|
||||
- **ForceNewCluster** – Force creation of a new swarm.
|
||||
- **Spec** – Configuration settings for the new swarm.
|
||||
- **Orchestration** – Configuration settings for the orchestration aspects of the swarm.
|
||||
- **TaskHistoryRetentionLimit** – Maximum number of tasks history stored.
|
||||
- **Raft** – Raft related configuration.
|
||||
- **SnapshotInterval** – Number of logs entries between snapshot.
|
||||
|
@ -3645,12 +3645,11 @@ JSON Parameters:
|
|||
- **Options** - An object with key/value pairs that are interpreted
|
||||
as protocol-specific options for the external CA driver.
|
||||
|
||||
### Join an existing Swarm
|
||||
|
||||
### Join an existing swarm
|
||||
|
||||
`POST /swarm/join`
|
||||
|
||||
Join an existing new Swarm
|
||||
Join an existing swarm
|
||||
|
||||
**Example request**:
|
||||
|
||||
|
@ -3659,7 +3658,7 @@ Join an existing new Swarm
|
|||
|
||||
{
|
||||
"ListenAddr": "0.0.0.0:4500",
|
||||
"AdvertiseAddr: "192.168.1.1:4500",
|
||||
"AdvertiseAddr": "192.168.1.1:4500",
|
||||
"RemoteAddrs": ["node1:4500"],
|
||||
"JoinToken": "SWMTKN-1-3pu6hszjas19xyp7ghgosyx9k8atbfcr8p2is99znpy26u2lkl-7p73s1dx5in4tatdymyhg9hu2"
|
||||
}
|
||||
|
@ -3674,7 +3673,7 @@ Join an existing new Swarm
|
|||
|
||||
- **200** – no error
|
||||
- **400** – bad parameter
|
||||
- **406** – node is already part of a Swarm
|
||||
- **406** – node is already part of a swarm
|
||||
|
||||
JSON Parameters:
|
||||
|
||||
|
@ -3685,15 +3684,15 @@ JSON Parameters:
|
|||
number, like `eth0:4567`. If the port number is omitted, the port number from the listen
|
||||
address is used. If `AdvertiseAddr` is not specified, it will be automatically detected when
|
||||
possible.
|
||||
- **RemoteAddr** – Address of any manager node already participating in the Swarm to join.
|
||||
- **RemoteAddr** – Address of any manager node already participating in the swarm.
|
||||
- **JoinToken** – Secret token for joining this Swarm.
|
||||
|
||||
### Leave a Swarm
|
||||
### Leave a swarm
|
||||
|
||||
|
||||
`POST /swarm/leave`
|
||||
|
||||
Leave a Swarm
|
||||
Leave a swarm
|
||||
|
||||
**Example request**:
|
||||
|
||||
|
@ -3708,14 +3707,14 @@ Leave a Swarm
|
|||
**Status codes**:
|
||||
|
||||
- **200** – no error
|
||||
- **406** – node is not part of a Swarm
|
||||
- **406** – node is not part of a swarm
|
||||
|
||||
### Update a Swarm
|
||||
### Update a swarm
|
||||
|
||||
|
||||
`POST /swarm/update`
|
||||
|
||||
Update a Swarm
|
||||
Update a swarm
|
||||
|
||||
**Example request**:
|
||||
|
||||
|
@ -3762,11 +3761,11 @@ Update a Swarm
|
|||
|
||||
- **200** – no error
|
||||
- **400** – bad parameter
|
||||
- **406** – node is not part of a Swarm
|
||||
- **406** – node is not part of a swarm
|
||||
|
||||
JSON Parameters:
|
||||
|
||||
- **Orchestration** – Configuration settings for the orchestration aspects of the Swarm.
|
||||
- **Orchestration** – Configuration settings for the orchestration aspects of the swarm.
|
||||
- **TaskHistoryRetentionLimit** – Maximum number of tasks history stored.
|
||||
- **Raft** – Raft related configuration.
|
||||
- **SnapshotInterval** – Number of logs entries between snapshot.
|
||||
|
@ -3787,13 +3786,13 @@ JSON Parameters:
|
|||
- **URL** - URL where certificate signing requests should be sent.
|
||||
- **Options** - An object with key/value pairs that are interpreted
|
||||
as protocol-specific options for the external CA driver.
|
||||
- **JoinTokens** - Tokens that can be used by other nodes to join the Swarm.
|
||||
- **JoinTokens** - Tokens that can be used by other nodes to join the swarm.
|
||||
- **Worker** - Token to use for joining as a worker.
|
||||
- **Manager** - Token to use for joining as a manager.
|
||||
|
||||
## 3.8 Services
|
||||
|
||||
**Note**: Service operations require to first be part of a Swarm.
|
||||
**Note**: Service operations require to first be part of a swarm.
|
||||
|
||||
### List services
|
||||
|
||||
|
@ -3979,7 +3978,7 @@ Create a service
|
|||
**Status codes**:
|
||||
|
||||
- **201** – no error
|
||||
- **406** – server error or node is not part of a Swarm
|
||||
- **406** – server error or node is not part of a swarm
|
||||
|
||||
JSON Parameters:
|
||||
|
||||
|
@ -4277,7 +4276,7 @@ Update the service `id`.
|
|||
|
||||
## 3.9 Tasks
|
||||
|
||||
**Note**: Tasks operations require to first be part of a Swarm.
|
||||
**Note**: Task operations require the engine to be part of a swarm.
|
||||
|
||||
### List tasks
|
||||
|
||||
|
|
|
@ -2280,7 +2280,7 @@ Show the docker version information
|
|||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"Version": "1.12.0-dev",
|
||||
"Version": "1.13.0",
|
||||
"Os": "linux",
|
||||
"KernelVersion": "3.19.0-23-generic",
|
||||
"GoVersion": "go1.6.3",
|
||||
|
@ -3323,7 +3323,7 @@ Instruct the driver to remove the network (`id`).
|
|||
|
||||
## 3.6 Nodes
|
||||
|
||||
**Note**: Nodes operations require to first be part of a Swarm.
|
||||
**Note**: Node operations require the engine to be part of a swarm.
|
||||
|
||||
### List nodes
|
||||
|
||||
|
@ -3573,12 +3573,12 @@ Return low-level information on the node `id`
|
|||
|
||||
## 3.7 Swarm
|
||||
|
||||
### Initialize a new Swarm
|
||||
### Initialize a new swarm
|
||||
|
||||
|
||||
`POST /swarm/init`
|
||||
|
||||
Initialize a new Swarm
|
||||
Initialize a new swarm
|
||||
|
||||
**Example request**:
|
||||
|
||||
|
@ -3607,7 +3607,7 @@ Initialize a new Swarm
|
|||
|
||||
- **200** – no error
|
||||
- **400** – bad parameter
|
||||
- **406** – node is already part of a Swarm
|
||||
- **406** – node is already part of a swarm
|
||||
|
||||
JSON Parameters:
|
||||
|
||||
|
@ -3621,9 +3621,9 @@ JSON Parameters:
|
|||
number, like `eth0:4567`. If the port number is omitted, the port number from the listen
|
||||
address is used. If `AdvertiseAddr` is not specified, it will be automatically detected when
|
||||
possible.
|
||||
- **ForceNewCluster** – Force creating a new Swarm even if already part of one.
|
||||
- **Spec** – Configuration settings of the new Swarm.
|
||||
- **Orchestration** – Configuration settings for the orchestration aspects of the Swarm.
|
||||
- **ForceNewCluster** – Force creation of a new swarm.
|
||||
- **Spec** – Configuration settings for the new swarm.
|
||||
- **Orchestration** – Configuration settings for the orchestration aspects of the swarm.
|
||||
- **TaskHistoryRetentionLimit** – Maximum number of tasks history stored.
|
||||
- **Raft** – Raft related configuration.
|
||||
- **SnapshotInterval** – Number of logs entries between snapshot.
|
||||
|
@ -3645,12 +3645,11 @@ JSON Parameters:
|
|||
- **Options** - An object with key/value pairs that are interpreted
|
||||
as protocol-specific options for the external CA driver.
|
||||
|
||||
### Join an existing Swarm
|
||||
|
||||
### Join an existing swarm
|
||||
|
||||
`POST /swarm/join`
|
||||
|
||||
Join an existing new Swarm
|
||||
Join an existing swarm
|
||||
|
||||
**Example request**:
|
||||
|
||||
|
@ -3674,7 +3673,7 @@ Join an existing new Swarm
|
|||
|
||||
- **200** – no error
|
||||
- **400** – bad parameter
|
||||
- **406** – node is already part of a Swarm
|
||||
- **406** – node is already part of a swarm
|
||||
|
||||
JSON Parameters:
|
||||
|
||||
|
@ -3685,15 +3684,15 @@ JSON Parameters:
|
|||
number, like `eth0:4567`. If the port number is omitted, the port number from the listen
|
||||
address is used. If `AdvertiseAddr` is not specified, it will be automatically detected when
|
||||
possible.
|
||||
- **RemoteAddr** – Address of any manager node already participating in the Swarm to join.
|
||||
- **RemoteAddr** – Address of any manager node already participating in the swarm.
|
||||
- **JoinToken** – Secret token for joining this Swarm.
|
||||
|
||||
### Leave a Swarm
|
||||
### Leave a swarm
|
||||
|
||||
|
||||
`POST /swarm/leave`
|
||||
|
||||
Leave a Swarm
|
||||
Leave a swarm
|
||||
|
||||
**Example request**:
|
||||
|
||||
|
@ -3708,14 +3707,14 @@ Leave a Swarm
|
|||
**Status codes**:
|
||||
|
||||
- **200** – no error
|
||||
- **406** – node is not part of a Swarm
|
||||
- **406** – node is not part of a swarm
|
||||
|
||||
### Update a Swarm
|
||||
### Update a swarm
|
||||
|
||||
|
||||
`POST /swarm/update`
|
||||
|
||||
Update a Swarm
|
||||
Update a swarm
|
||||
|
||||
**Example request**:
|
||||
|
||||
|
@ -3762,11 +3761,11 @@ Update a Swarm
|
|||
|
||||
- **200** – no error
|
||||
- **400** – bad parameter
|
||||
- **406** – node is not part of a Swarm
|
||||
- **406** – node is not part of a swarm
|
||||
|
||||
JSON Parameters:
|
||||
|
||||
- **Orchestration** – Configuration settings for the orchestration aspects of the Swarm.
|
||||
- **Orchestration** – Configuration settings for the orchestration aspects of the swarm.
|
||||
- **TaskHistoryRetentionLimit** – Maximum number of tasks history stored.
|
||||
- **Raft** – Raft related configuration.
|
||||
- **SnapshotInterval** – Number of logs entries between snapshot.
|
||||
|
@ -3787,13 +3786,13 @@ JSON Parameters:
|
|||
- **URL** - URL where certificate signing requests should be sent.
|
||||
- **Options** - An object with key/value pairs that are interpreted
|
||||
as protocol-specific options for the external CA driver.
|
||||
- **JoinTokens** - Tokens that can be used by other nodes to join the Swarm.
|
||||
- **JoinTokens** - Tokens that can be used by other nodes to join the swarm.
|
||||
- **Worker** - Token to use for joining as a worker.
|
||||
- **Manager** - Token to use for joining as a manager.
|
||||
|
||||
## 3.8 Services
|
||||
|
||||
**Note**: Service operations require to first be part of a Swarm.
|
||||
**Note**: Service operations require to first be part of a swarm.
|
||||
|
||||
### List services
|
||||
|
||||
|
@ -3979,7 +3978,7 @@ Create a service
|
|||
**Status codes**:
|
||||
|
||||
- **201** – no error
|
||||
- **406** – server error or node is not part of a Swarm
|
||||
- **406** – server error or node is not part of a swarm
|
||||
|
||||
JSON Parameters:
|
||||
|
||||
|
@ -4073,7 +4072,7 @@ Stop and remove the service `id`
|
|||
- **404** – no such service
|
||||
- **500** – server error
|
||||
|
||||
### Inspect one or more service
|
||||
### Inspect one or more services
|
||||
|
||||
|
||||
`GET /services/(id or name)`
|
||||
|
@ -4277,7 +4276,7 @@ Update the service `id`.
|
|||
|
||||
## 3.9 Tasks
|
||||
|
||||
**Note**: Tasks operations require to first be part of a Swarm.
|
||||
**Note**: Task operations require the engine to be part of a swarm.
|
||||
|
||||
### List tasks
|
||||
|
||||
|
|
|
@ -38,7 +38,7 @@ available on the volume where `/var/lib/docker` is mounted.
|
|||
## Display Docker system information
|
||||
|
||||
Here is a sample output for a daemon running on Ubuntu, using the overlay
|
||||
storage driver and a node that is part of a 2 node swarm cluster:
|
||||
storage driver and a node that is part of a 2-node swarm:
|
||||
|
||||
$ docker -D info
|
||||
Containers: 14
|
||||
|
|
|
@ -20,7 +20,7 @@ Options:
|
|||
|
||||
```
|
||||
|
||||
Demotes an existing manager so that it is no longer a manager. This command targets a docker engine that is a manager in the swarm cluster.
|
||||
Demotes an existing manager so that it is no longer a manager. This command targets a docker engine that is a manager in the swarm.
|
||||
|
||||
|
||||
```bash
|
||||
|
|
|
@ -19,7 +19,7 @@ Options:
|
|||
--help Print usage
|
||||
```
|
||||
|
||||
Promotes a node that is pending a promotion to manager. This command targets a docker engine that is a manager in the swarm cluster.
|
||||
Promotes a node to manager. This command targets a docker engine that is a manager in the swarm.
|
||||
|
||||
|
||||
```bash
|
||||
|
|
|
@ -26,8 +26,8 @@ Options:
|
|||
--task-history-limit int Task history retention limit (default 5)
|
||||
```
|
||||
|
||||
Initialize a swarm cluster. The docker engine targeted by this command becomes a manager
|
||||
in the newly created one node swarm cluster.
|
||||
Initialize a swarm. The docker engine targeted by this command becomes a manager
|
||||
in the newly created single-node swarm.
|
||||
|
||||
|
||||
```bash
|
||||
|
|
|
@ -23,7 +23,7 @@ Options:
|
|||
--task-history-limit int Task history retention limit (default 5)
|
||||
```
|
||||
|
||||
Updates a swarm cluster with new parameter values. This command must target a manager node.
|
||||
Updates a swarm with new parameter values. This command must target a manager node.
|
||||
|
||||
|
||||
```bash
|
||||
|
|
|
@ -199,7 +199,7 @@ di9wxgz8dtuh9d2hn089ecqkf node06 Accepted Ready Active
|
|||
|
||||
## Manager advertise address
|
||||
|
||||
When initiating or joining a Swarm cluster, you have to specify the `--listen-addr`
|
||||
When initiating or joining a swarm, you have to specify the `--listen-addr`
|
||||
flag to advertise your address to other Manager nodes in the cluster.
|
||||
|
||||
We recommend that you use a *fixed IP address* for the advertised address, otherwise
|
||||
|
|
|
@ -17,7 +17,7 @@ repository](https://github.com/docker/docker/releases). Alternatively, install
|
|||
the latest Docker for Mac or Docker for Windows Beta.
|
||||
|
||||
Docker Engine 1.12 includes swarm mode for natively managing a cluster of
|
||||
Docker Engines called a Swarm. Use the Docker CLI to create a swarm, deploy
|
||||
Docker Engines called a *swarm*. Use the Docker CLI to create a swarm, deploy
|
||||
application services to a swarm, and manage swarm behavior.
|
||||
|
||||
|
||||
|
@ -27,9 +27,9 @@ Swarm](https://docs.docker.com/swarm).
|
|||
## Feature highlights
|
||||
|
||||
* **Cluster management integrated with Docker Engine:** Use the Docker Engine
|
||||
CLI to create a Swarm of Docker Engines where you can deploy application
|
||||
CLI to create a swarm of Docker Engines where you can deploy application
|
||||
services. You don't need additional orchestration software to create or manage
|
||||
a Swarm.
|
||||
a swarm.
|
||||
|
||||
* **Decentralized design:** Instead of handling differentiation between node
|
||||
roles at deployment time, the Docker Engine handles any specialization at
|
||||
|
|
|
@ -75,7 +75,7 @@ availability. Because swarm mode manager nodes share data using Raft, there
|
|||
must be an odd number of managers. The swarm can continue to function after as
|
||||
long as a quorum of more than half of the manager nodes are available.
|
||||
|
||||
For more detail about swarm managers and administering a swarm cluster, see
|
||||
For more detail about swarm managers and administering a swarm, see
|
||||
[Administer and maintain a swarm of Docker Engines](admin_guide.md).
|
||||
|
||||
To retrieve the join command including the join token for manager nodes, run the
|
||||
|
|
|
@ -77,7 +77,7 @@ PublishedPort for the service in the 30000-32767 range.
|
|||
|
||||
External components, such as cloud load balancers, can access the service on the
|
||||
PublishedPort of any node in the cluster whether or not the node is currently
|
||||
running the task for the service. All nodes in the swarm cluster route ingress
|
||||
running the task for the service. All nodes in the swarm route ingress
|
||||
connections to a running task instance.
|
||||
|
||||
Swarm mode has an internal DNS component that automatically assigns each service
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<!--[metadata]>
|
||||
+++
|
||||
title = "Drain a node"
|
||||
description = "Drain nodes on the Swarm"
|
||||
description = "Drain nodes on the swarm"
|
||||
keywords = ["tutorial, cluster management, swarm, service, drain"]
|
||||
[menu.main]
|
||||
identifier="swarm-tutorial-drain-node"
|
||||
|
@ -45,7 +45,7 @@ update](rolling-update.md) tutorial, start it now:
|
|||
c5uo6kdmzpon37mgj9mwglcfw
|
||||
```
|
||||
|
||||
4. Run `docker service ps redis` to see how the Swarm manager assigned the
|
||||
4. Run `docker service ps redis` to see how the swarm manager assigned the
|
||||
tasks to different nodes:
|
||||
|
||||
```bash
|
||||
|
@ -84,7 +84,7 @@ had a task assigned to it:
|
|||
|
||||
The drained node shows `Drain` for `AVAILABILITY`.
|
||||
|
||||
7. Run `docker service ps redis` to see how the Swarm manager updated the
|
||||
7. Run `docker service ps redis` to see how the swarm manager updated the
|
||||
task assignments for the `redis` service:
|
||||
|
||||
```bash
|
||||
|
|
|
@ -103,7 +103,7 @@ service:
|
|||
|
||||
In this case, the one instance of the `helloworld` service is running on the
|
||||
`worker2` node. You may see the service running on your manager node. By
|
||||
default, manager nodes in a Swarm can execute tasks just like worker nodes.
|
||||
default, manager nodes in a swarm can execute tasks just like worker nodes.
|
||||
|
||||
Swarm also shows you the `DESIRED STATE` and `LAST STATE` of the service
|
||||
task so you can see if tasks are running according to the service
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<!--[metadata]>
|
||||
+++
|
||||
title = "Apply rolling updates"
|
||||
description = "Apply rolling updates to a service on the Swarm"
|
||||
description = "Apply rolling updates to a service on the swarm"
|
||||
keywords = ["tutorial, cluster management, swarm, service, rolling-update"]
|
||||
[menu.main]
|
||||
identifier="swarm-tutorial-rolling-update"
|
||||
|
@ -148,4 +148,4 @@ desired state:
|
|||
`redis:3.0.6` while others are running `redis:3.0.7`. The output above shows
|
||||
the state once the rolling updates are done.
|
||||
|
||||
Next, learn about how to [drain a node](drain-node.md) in the Swarm.
|
||||
Next, learn about how to [drain a node](drain-node.md) in the swarm.
|
||||
|
|
|
@ -462,7 +462,7 @@ Docker Engine for use with `overlay` network. There are three options to set:
|
|||
</tbody>
|
||||
</table>
|
||||
|
||||
Create an `overlay` network on one of the machines in the Swarm.
|
||||
Create an `overlay` network on one of the machines in the swarm.
|
||||
|
||||
$ docker network create --driver overlay my-multi-host-network
|
||||
|
||||
|
|
Loading…
Reference in a new issue