diff --git a/daemon/cluster/cluster.go b/daemon/cluster/cluster.go index 6c15659e33dd3..0c8979e6b383c 100644 --- a/daemon/cluster/cluster.go +++ b/daemon/cluster/cluster.go @@ -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) } diff --git a/docs/reference/api/docker_remote_api_v1.24.md b/docs/reference/api/docker_remote_api_v1.24.md index 60c506af60814..31f8a7c03fed8 100644 --- a/docs/reference/api/docker_remote_api_v1.24.md +++ b/docs/reference/api/docker_remote_api_v1.24.md @@ -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 diff --git a/docs/reference/api/docker_remote_api_v1.25.md b/docs/reference/api/docker_remote_api_v1.25.md index 3e00b2548dccf..b3075bc50cbbe 100644 --- a/docs/reference/api/docker_remote_api_v1.25.md +++ b/docs/reference/api/docker_remote_api_v1.25.md @@ -2281,7 +2281,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", @@ -3324,7 +3324,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 @@ -3574,12 +3574,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**: @@ -3608,7 +3608,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: @@ -3622,9 +3622,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. @@ -3646,12 +3646,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**: @@ -3675,7 +3674,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: @@ -3686,15 +3685,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**: @@ -3709,14 +3708,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**: @@ -3763,11 +3762,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. @@ -3788,13 +3787,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 @@ -3980,7 +3979,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: @@ -4074,7 +4073,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)` @@ -4278,7 +4277,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 diff --git a/docs/reference/commandline/info.md b/docs/reference/commandline/info.md index 04ccc8ed67787..f62add6603b54 100644 --- a/docs/reference/commandline/info.md +++ b/docs/reference/commandline/info.md @@ -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 diff --git a/docs/reference/commandline/node_demote.md b/docs/reference/commandline/node_demote.md index a1baff0e506d5..78acbfdf40e7a 100644 --- a/docs/reference/commandline/node_demote.md +++ b/docs/reference/commandline/node_demote.md @@ -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 diff --git a/docs/reference/commandline/node_promote.md b/docs/reference/commandline/node_promote.md index b507e7d489e25..de0bb9a0aa3a7 100644 --- a/docs/reference/commandline/node_promote.md +++ b/docs/reference/commandline/node_promote.md @@ -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 diff --git a/docs/reference/commandline/swarm_init.md b/docs/reference/commandline/swarm_init.md index 0df2b23bfc5ac..c4a7a99e8487b 100644 --- a/docs/reference/commandline/swarm_init.md +++ b/docs/reference/commandline/swarm_init.md @@ -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 diff --git a/docs/reference/commandline/swarm_update.md b/docs/reference/commandline/swarm_update.md index cbefd6dcdc091..9aa8131941b39 100644 --- a/docs/reference/commandline/swarm_update.md +++ b/docs/reference/commandline/swarm_update.md @@ -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 diff --git a/docs/swarm/admin_guide.md b/docs/swarm/admin_guide.md index a014a717f48d7..23f7f7f4b7319 100644 --- a/docs/swarm/admin_guide.md +++ b/docs/swarm/admin_guide.md @@ -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 diff --git a/docs/swarm/index.md b/docs/swarm/index.md index 2325209eff7a8..080c839a9e760 100644 --- a/docs/swarm/index.md +++ b/docs/swarm/index.md @@ -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 diff --git a/docs/swarm/join-nodes.md b/docs/swarm/join-nodes.md index 9f64a0d499273..2d7fc94de23ed 100644 --- a/docs/swarm/join-nodes.md +++ b/docs/swarm/join-nodes.md @@ -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 diff --git a/docs/swarm/key-concepts.md b/docs/swarm/key-concepts.md index 37e534f9ac0b1..e0e88e22b9e75 100644 --- a/docs/swarm/key-concepts.md +++ b/docs/swarm/key-concepts.md @@ -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 diff --git a/docs/swarm/swarm-tutorial/drain-node.md b/docs/swarm/swarm-tutorial/drain-node.md index dc65f0c9ba651..e54679f52b1fe 100644 --- a/docs/swarm/swarm-tutorial/drain-node.md +++ b/docs/swarm/swarm-tutorial/drain-node.md @@ -1,7 +1,7 @@