Docker Engine API
  1. Container
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
    • Delete builder cache
    • Create a new image from a container
    • Create an image
    • Export several images
    • List Images
    • Import images
    • Delete unused images
    • Search images
    • Remove an image
    • Export an image
    • Get the history of an image
    • Inspect an image
    • Push an image
    • Tag an image
  • Config
    • List configs
    • Create a config
    • Delete a config
    • Inspect a config
    • Update a Config
  • Container
    • Create a container
      POST
    • List containers
      GET
    • Delete stopped containers
      POST
    • Remove a container
      DELETE
    • Get an archive of a filesystem resource in a container
      GET
    • Get information about files in a container
      HEAD
    • Extract an archive of files or folders to a directory in a container
      PUT
    • Attach to a container
      POST
    • Attach to a container via a websocket
      GET
    • Get changes on a container’s filesystem
      GET
    • Export a container
      GET
    • Inspect a container
      GET
    • Kill a container
      POST
    • Get container logs
      GET
    • Pause a container
      POST
    • Rename a container
      POST
    • Resize a container TTY
      POST
    • Restart a container
      POST
    • Start a container
      POST
    • Get container stats based on resource usage
      GET
    • Stop a container
      POST
    • List processes running inside a container
      GET
    • Unpause a container
      POST
    • Update a container
      POST
    • Wait for a container
      POST
  • 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
    • Initialize a new swarm
    • Join an existing swarm
    • Leave a swarm
    • Unlock a locked manager
    • Get the unlock key
    • Update a swarm
  • 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. Container

Update a container

/v1.33
/v1.33
/v1.33
/v1.33
POST
/containers/{id}/update
Container
Change various configuration options of a container without having to recreate it.
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST '/v1.33/containers//update' \
--header 'Content-Type: application/json' \
--data-raw '{
    "BlkioWeight": 300,
    "CpuPeriod": 100000,
    "CpuQuota": 50000,
    "CpuRealtimePeriod": 1000000,
    "CpuRealtimeRuntime": 10000,
    "CpuShares": 512,
    "CpusetCpus": "0,1",
    "CpusetMems": "0",
    "KernelMemory": 52428800,
    "Memory": 314572800,
    "MemoryReservation": 209715200,
    "MemorySwap": 514288000,
    "RestartPolicy": {
        "MaximumRetryCount": 4,
        "Name": "on-failure"
    }
}'
Response Response Example
200 - Example 1
{
    "Warnings": [
        "string"
    ]
}

Request

Path Params
id
string 
required
ID or name of the container
Body Params application/json
A container's resources (cgroups config, ulimits, etc)
BlkioDeviceReadBps
array[object (ThrottleDevice) {2}] 
optional
Limit read rate (bytes per second) from a device, in the form [{"Path": "device_path", "Rate": rate}].
Path
string 
optional
Device path
Rate
integer <int64>
optional
Rate
>= 0
BlkioDeviceReadIOps
array[object (ThrottleDevice) {2}] 
optional
Limit read rate (IO per second) from a device, in the form [{"Path": "device_path", "Rate": rate}].
Path
string 
optional
Device path
Rate
integer <int64>
optional
Rate
>= 0
BlkioDeviceWriteBps
array[object (ThrottleDevice) {2}] 
optional
Limit write rate (bytes per second) to a device, in the form [{"Path": "device_path", "Rate": rate}].
Path
string 
optional
Device path
Rate
integer <int64>
optional
Rate
>= 0
BlkioDeviceWriteIOps
array[object (ThrottleDevice) {2}] 
optional
Limit write rate (IO per second) to a device, in the form [{"Path": "device_path", "Rate": rate}].
Path
string 
optional
Device path
Rate
integer <int64>
optional
Rate
>= 0
BlkioWeight
integer 
optional
Block IO weight (relative weight).
>= 0<= 1000
BlkioWeightDevice
array [object {2}] 
optional
Block IO weight (relative device weight) in the form [{"Path": "device_path", "Weight": weight}].
Path
string 
optional
Weight
integer 
optional
>= 0
CgroupParent
string 
optional
Path to cgroups under which the container's cgroup is created. If the path is not absolute, the path is considered to be relative to the cgroups path of the init process. Cgroups are created if they do not already exist.
CpuCount
integer <int64>
optional
The number of usable CPUs (Windows only).
On Windows Server containers, the processor resource controls are mutually exclusive. The order of precedence is CPUCount first, then CPUShares, and CPUPercent last.
CpuPercent
integer <int64>
optional
The usable percentage of the available CPUs (Windows only).
On Windows Server containers, the processor resource controls are mutually exclusive. The order of precedence is CPUCount first, then CPUShares, and CPUPercent last.
CpuPeriod
integer <int64>
optional
The length of a CPU period in microseconds.
CpuQuota
integer <int64>
optional
Microseconds of CPU time that the container can get in a CPU period.
CpuRealtimePeriod
integer <int64>
optional
The length of a CPU real-time period in microseconds. Set to 0 to allocate no time allocated to real-time tasks.
CpuRealtimeRuntime
integer <int64>
optional
The length of a CPU real-time runtime in microseconds. Set to 0 to allocate no time allocated to real-time tasks.
CpuShares
integer 
optional
An integer value representing this container's relative CPU weight versus other containers.
CpusetCpus
string 
optional
CPUs in which to allow execution (e.g., 0-3, 0,1)
Example:
0-3
CpusetMems
string 
optional
Memory nodes (MEMs) in which to allow execution (0-3, 0,1). Only effective on NUMA systems.
DeviceCgroupRules
array[string]
optional
a list of cgroup rules to apply to the container
Devices
array[object (DeviceMapping) {3}] 
optional
A list of devices to add to the container.
CgroupPermissions
string 
optional
PathInContainer
string 
optional
PathOnHost
string 
optional
DiskQuota
integer <int64>
optional
Disk limit (in bytes).
IOMaximumBandwidth
integer <int64>
optional
Maximum IO in bytes per second for the container system drive (Windows only)
IOMaximumIOps
integer <int64>
optional
Maximum IOps for the container system drive (Windows only)
KernelMemory
integer <int64>
optional
Kernel memory limit in bytes.
Memory
integer 
optional
Memory limit in bytes.
Default:
0
MemoryReservation
integer <int64>
optional
Memory soft limit in bytes.
MemorySwap
integer <int64>
optional
Total memory limit (memory + swap). Set as -1 to enable unlimited swap.
MemorySwappiness
integer <int64>
optional
Tune a container's memory swappiness behavior. Accepts an integer between 0 and 100.
>= 0<= 100
NanoCPUs
integer <int64>
optional
CPU quota in units of 10-9 CPUs.
OomKillDisable
boolean 
optional
Disable OOM Killer for the container.
PidsLimit
integer <int64>
optional
Tune a container's pids limit. Set -1 for unlimited.
Ulimits
array [object {3}] 
optional
A list of resource limits to set in the container. For example: {"Name": "nofile", "Soft": 1024, "Hard": 2048}"
Hard
integer 
optional
Hard limit
Name
string 
optional
Name of ulimit
Soft
integer 
optional
Soft limit
RestartPolicy
object 
RestartPolicy
optional
The behavior to apply when the container exits. The default is not to restart.
An ever increasing delay (double the previous delay, starting at 100ms) is added before each restart to prevent flooding the server.
MaximumRetryCount
integer 
optional
If on-failure is used, the number of times to retry before giving up
Name
enum<string> 
optional
Empty string means not to restart
always Always restart
unless-stopped Restart always except when the user has manually stopped the container
on-failure Restart only when the container exit code is non-zero
Allowed values:
alwaysunless-stoppedon-failure
Examples

Responses

🟢200The container has been updated.
application/json
Body
Warnings
array[string]
optional
🟠404no such container
🔴500server error
Modified at 2022-09-10 17:56:06
Previous
Unpause a container
Next
Wait for a container
Built with