Docker Engine API
  1. Swarm
Docker Engine API
  • System
    • Ping
      GET
    • Check auth configuration
      POST
    • Monitor events
      GET
    • Get system information
      GET
    • Get data usage information
      GET
    • Get version
      GET
  • Image
    • Build an image
      POST
    • Delete builder cache
      POST
    • Create a new image from a container
      POST
    • Create an image
      POST
    • Export several images
      GET
    • List Images
      GET
    • Import images
      POST
    • Delete unused images
      POST
    • Search images
      GET
    • Remove an image
      DELETE
    • Export an image
      GET
    • Get the history of an image
      GET
    • Inspect an image
      GET
    • Push an image
      POST
    • Tag an image
      POST
  • Config
    • List configs
    • Create a config
    • Delete a config
    • Inspect a config
    • Update a Config
  • Container
    • Create a container
    • List containers
    • Delete stopped containers
    • Remove a container
    • Get an archive of a filesystem resource in a container
    • Get information about files in a container
    • Extract an archive of files or folders to a directory in a container
    • Attach to a container
    • Attach to a container via a websocket
    • Get changes on a container’s filesystem
    • Export a container
    • Inspect a container
    • Kill a container
    • Get container logs
    • Pause a container
    • Rename a container
    • Resize a container TTY
    • Restart a container
    • Start a container
    • Get container stats based on resource usage
    • Stop a container
    • List processes running inside a container
    • Unpause a container
    • Update a container
    • Wait for a container
  • Exec
    • Create an exec instance
    • Inspect an exec instance
    • Resize an exec instance
    • Start an exec instance
  • Distribution
    • Get image information from the registry
  • Network
    • List networks
    • Create a network
    • Delete unused networks
    • Remove a network
    • Inspect a network
    • Connect a container to a network
    • Disconnect a container from a network
  • Node
    • List nodes
    • Delete a node
    • Inspect a node
    • Update a node
  • Plugin
    • List plugins
    • Create a plugin
    • Get plugin privileges
    • Install a plugin
    • Remove a plugin
    • Disable a plugin
    • Enable a plugin
    • Inspect a plugin
    • Push a plugin
    • Configure a plugin
    • Upgrade a plugin
  • Secret
    • List secrets
    • Create a secret
    • Delete a secret
    • Inspect a secret
    • Update a Secret
  • Service
    • List services
    • Create a service
    • Delete a service
    • Inspect a service
    • Get service logs
    • Update a service
  • Session (experimental)
    • Initialize interactive session
  • Swarm
    • Inspect swarm
      GET
    • Initialize a new swarm
      POST
    • Join an existing swarm
      POST
    • Leave a swarm
      POST
    • Unlock a locked manager
      POST
    • Get the unlock key
      GET
    • Update a swarm
      POST
  • Task
    • List tasks
    • Inspect a task
  • Volume
    • List volumes
    • Create a volume
    • Delete unused volumes
    • Remove a volume
    • Inspect a volume
  • Get task logs
    GET
  1. Swarm

Update a swarm

/v1.33
/v1.33
/v1.33
/v1.33
POST
/swarm/update
Swarm
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST '/v1.33/swarm/update?version=' \
--header 'Content-Type: application/json' \
--data-raw '{
    "CAConfig": {
        "ExternalCAs": [
            {
                "CACert": "string",
                "Options": {
                    "property1": "string",
                    "property2": "string"
                },
                "Protocol": "cfssl",
                "URL": "string"
            }
        ],
        "ForceRotate": 0,
        "NodeCertExpiry": 7776000000000000,
        "SigningCACert": "string",
        "SigningCAKey": "string"
    },
    "Dispatcher": {
        "HeartbeatPeriod": 5000000000
    },
    "EncryptionConfig": {
        "AutoLockManagers": false
    },
    "Labels": {
        "com.example.corp.department": "engineering",
        "com.example.corp.type": "production"
    },
    "Name": "default",
    "Orchestration": {
        "TaskHistoryRetentionLimit": 10
    },
    "Raft": {
        "ElectionTick": 3,
        "HeartbeatTick": 1,
        "KeepOldSnapshots": 0,
        "LogEntriesForSlowFollowers": 500,
        "SnapshotInterval": 10000
    },
    "TaskDefaults": {
        "LogDriver": {
            "Name": "json-file",
            "Options": {
                "max-file": "10",
                "max-size": "100m"
            }
        }
    }
}'
Response Response Example
200 - Example 1
{}

Request

Query Params
version
integer 
required
The version number of the swarm object being updated. This is required to avoid conflicting writes.
rotateWorkerToken
string 
optional
Rotate the worker join token.
rotateManagerToken
string 
optional
Rotate the manager join token.
rotateManagerUnlockKey
string 
optional
Rotate the manager unlock key.
Body Params application/json
User modifiable swarm configuration.
CAConfig
object  | null 
optional
CA configuration.
ExternalCAs
array [object {4}] 
optional
Configuration for forwarding signing requests to an external certificate authority.
ForceRotate
integer <uint64>
optional
An integer whose purpose is to force swarm to generate a new signing CA certificate and key, if none have been specified in SigningCACert and SigningCAKey
NodeCertExpiry
integer <int64>
optional
The duration node certificates are issued for.
Example:
7776000000000000
SigningCACert
string 
optional
The desired signing CA certificate for all swarm node TLS leaf certificates, in PEM format.
SigningCAKey
string 
optional
The desired signing CA key for all swarm node TLS leaf certificates, in PEM format.
Dispatcher
object  | null 
optional
Dispatcher configuration.
HeartbeatPeriod
integer <int64>
optional
The delay for an agent to send a heartbeat to the dispatcher.
Example:
5000000000
EncryptionConfig
object 
optional
Parameters related to encryption-at-rest.
AutoLockManagers
boolean 
optional
If set, generate a key and use it to lock data stored on the managers.
Example:
false
Labels
object 
optional
User-defined key/value metadata.
Example:
{"com.example.corp.department":"engineering","com.example.corp.type":"production"}
Additional properties
string 
optional
Name
string 
optional
Name of the swarm.
Example:
default
Orchestration
object  | null 
optional
Orchestration configuration.
TaskHistoryRetentionLimit
integer <int64>
optional
The number of historic tasks to keep per instance or node. If negative, never remove completed or failed tasks.
Example:
10
Raft
object 
optional
Raft configuration.
ElectionTick
integer 
optional
The number of ticks that a follower will wait for a message from the leader before becoming a candidate and starting an election. ElectionTick must be greater than HeartbeatTick.
A tick currently defaults to one second, so these translate directly to seconds currently, but this is NOT guaranteed.
Example:
3
HeartbeatTick
integer 
optional
The number of ticks between heartbeats. Every HeartbeatTick ticks, the leader will send a heartbeat to the followers.
A tick currently defaults to one second, so these translate directly to seconds currently, but this is NOT guaranteed.
Example:
1
KeepOldSnapshots
integer <uint64>
optional
The number of snapshots to keep beyond the current snapshot.
LogEntriesForSlowFollowers
integer <uint64>
optional
The number of log entries to keep around to sync up slow followers after a snapshot is created.
Example:
500
SnapshotInterval
integer <uint64>
optional
The number of log entries between snapshots.
Example:
10000
TaskDefaults
object 
optional
Defaults for creating tasks in this cluster.
LogDriver
object 
optional
The log driver to use for tasks created in the orchestrator if
unspecified by a service.
Updating this value only affects new tasks. Existing tasks continue
to use their previously configured log driver until recreated.
Examples

Responses

🟢200no error
application/json
Body
object {0}
🟠400bad parameter
🔴500server error
🔴503node is not part of a swarm
Modified at 2022-09-10 17:56:07
Previous
Get the unlock key
Next
List tasks
Built with