github.com/kim0/docker@v0.6.2-0.20161130212042-4addda3f07e7/api/swagger.yaml (about)

     1  swagger: "2.0"
     2  schemes:
     3    - "http"
     4    - "https"
     5  produces:
     6    - "application/json"
     7    - "text/plain"
     8  consumes:
     9    - "application/json"
    10    - "text/plain"
    11  basePath: "/v1.25"
    12  info:
    13    title: "Docker Remote API"
    14    version: "1.25"
    15    description: |
    16      The Docker API is an HTTP REST API served by Docker Engine. It is the API the Docker client uses to communicate with the Engine, so everything the Docker client can do can be done with the API.
    17  
    18      Most of the client's commands map directly to API endpoints (e.g. `docker ps` is `GET /containers/json`). The notable exception is running containers, which consists of several API calls. [There is example of using `curl` to run a container in the SDK documentation.](#TODO)
    19  
    20      # Errors
    21  
    22      The Remote API uses standard HTTP status codes to indicate the success or failure of the API call. The body of the response will be JSON in the following format:
    23  
    24      ```
    25      {
    26        "message": "page not found"
    27      }
    28      ```
    29  
    30      # Versioning
    31  
    32      The API is usually changed in each release of Docker. If you want to write a client that doesn't break when connecting to newer Docker releases, you can lock to a specific API version.
    33  
    34      For Docker 1.13, the API version is 1.25. To lock to this version, you prefix the URL with `/v1.25`. For example, calling `/info` is the same as calling `/v1.25/info`.
    35  
    36      The API uses an open schema model, which means server may add extra properties to responses. Likewise, the server will ignore any extra query parameters and request body properties. When you write clients, you need to ignore additional properties in responses to ensure they do not break when talking to newer Docker daemons.
    37  
    38      # Authentication
    39  
    40      Authentication for registries is handled client side. The client has to send authentication details to various endpoints that need to communicate with registries, such as `POST /images/(name)/push`. These are sent as `X-Registry-Auth` header as a Base64 encoded (JSON) string with the following structure:
    41  
    42      ```
    43      {
    44        "username": "string",
    45        "password": "string",
    46        "email": "string",
    47        "serveraddress": "string"
    48      }
    49      ```
    50  
    51      The `serveraddress` is a domain/IP without a protocol. Throughout this structure, double quotes are required.
    52  
    53      If you have already got an identity token from the [`/auth` endpoint](#operation/checkAuthentication), you can just pass this instead of credentials:
    54  
    55      ```
    56      {
    57        "identitytoken": "9cbaf023786cd7..."
    58      }
    59      ```
    60  
    61  definitions:
    62    Port:
    63      type: "object"
    64      description: "An open port on a container"
    65      required: [PrivatePort, Type]
    66      properties:
    67        IP:
    68          type: "string"
    69          format: "ip-address"
    70        PrivatePort:
    71          type: "integer"
    72          format: "uint16"
    73          x-nullable: false
    74          description: "Port on the container"
    75        PublicPort:
    76          type: "integer"
    77          format: "uint16"
    78          description: "Port exposed on the host"
    79        Type:
    80          type: "string"
    81          x-nullable: false
    82          enum: ["tcp", "udp"]
    83      example:
    84        PrivatePort: 8080
    85        PublicPort: 80
    86        Type: "tcp"
    87  
    88    MountPoint:
    89      type: "object"
    90      description: "A mount point inside a container"
    91      properties:
    92        Type:
    93          type: "string"
    94        Name:
    95          type: "string"
    96        Source:
    97          type: "string"
    98        Destination:
    99          type: "string"
   100        Driver:
   101          type: "string"
   102        Mode:
   103          type: "string"
   104        RW:
   105          type: "boolean"
   106        Propagation:
   107          type: "string"
   108  
   109    DeviceMapping:
   110      type: "object"
   111      description: "A device mapping between the host and container"
   112      properties:
   113        PathOnHost:
   114          type: "string"
   115        PathInContainer:
   116          type: "string"
   117        CgroupPermissions:
   118          type: "string"
   119      example:
   120        PathOnHost: "/dev/deviceName"
   121        PathInContainer: "/dev/deviceName"
   122        CgroupPermissions: "mrw"
   123  
   124    ThrottleDevice:
   125      type: "object"
   126      properties:
   127        Path:
   128          description: "Device path"
   129          type: "string"
   130        Rate:
   131          description: "Rate"
   132          type: "integer"
   133          format: "int64"
   134          minimum: 0
   135  
   136    Mount:
   137      type: "object"
   138      properties:
   139        Target:
   140          description: "Container path."
   141          type: "string"
   142        Source:
   143          description: "Mount source (e.g. a volume name, a host path)."
   144        Type:
   145          description: |
   146            The mount type. Available types:
   147  
   148            - `bind` Mounts a file or directory from the host into the container. Must exist prior to creating the container.
   149            - `volume` Creates a volume with the given name and options (or uses a pre-existing volume with the same name and options). These are **not** removed when the container is removed.
   150          type: "string"
   151          enum:
   152            - "bind"
   153            - "volume"
   154        ReadOnly:
   155          description: "Whether the mount should be read-only."
   156          type: "boolean"
   157        BindOptions:
   158          description: "Optional configuration for the `bind` type."
   159          type: "object"
   160          properties:
   161            Propagation:
   162              description: "A propagation mode with the value `[r]private`, `[r]shared`, or `[r]slave`."
   163              enum:
   164                - "private"
   165                - "rprivate"
   166                - "shared"
   167                - "rshared"
   168                - "slave"
   169                - "rslave"
   170        VolumeOptions:
   171          description: "Optional configuration for the `volume` type."
   172          type: "object"
   173          properties:
   174            NoCopy:
   175              description: "Populate volume with data from the target."
   176              type: "boolean"
   177              default: false
   178            Labels:
   179              description: "User-defined name and labels for the volume as key/value pairs."
   180              type: "object"
   181              additionalProperties:
   182                type: "string"
   183            DriverConfig:
   184              description: "Map of driver specific options"
   185              type: "object"
   186              properties:
   187                Name:
   188                  description: "Name of the driver to use to create the volume."
   189                  type: "string"
   190                Options:
   191                  description: "key/value map of driver specific options."
   192                  type: "object"
   193                  additionalProperties:
   194                    type: "string"
   195  
   196    RestartPolicy:
   197      description: |
   198        The behavior to apply when the container exits. The default is not to restart.
   199  
   200        An ever increasing delay (double the previous delay, starting at 100ms) is added before each restart to prevent flooding the server.
   201      type: "object"
   202      properties:
   203        Name:
   204          type: "string"
   205          description: |
   206            - `always` Always restart
   207            - `unless-stopped` Restart always except when the user has manually stopped the container
   208            - `on-failure` Restart only when the container exit code is non-zero
   209          enum:
   210            - "always"
   211            - "unless-stopped"
   212            - "on-failure"
   213        MaximumRetryCount:
   214          type: "integer"
   215          description: "If `on-failure` is used, the number of times to retry before giving up"
   216      default: {}
   217  
   218    Resources:
   219      description: "A container's resources (cgroups config, ulimits, etc)"
   220      type: "object"
   221      properties:
   222        # Applicable to all platforms
   223        CpuShares:
   224          description: "An integer value representing this container's relative CPU weight versus other containers."
   225          type: "integer"
   226        Memory:
   227          description: "Memory limit in bytes."
   228          type: "integer"
   229          default: 0
   230        # Applicable to UNIX platforms
   231        CgroupParent:
   232          description: "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."
   233          type: "string"
   234        BlkioWeight:
   235          description: "Block IO weight (relative weight)."
   236          type: "integer"
   237          minimum: 10
   238          maximum: 1000
   239        BlkioWeightDevice:
   240          description: |
   241            Block IO weight (relative device weight) in the form `[{"Path": "device_path", "Weight": weight}]`.
   242          type: "array"
   243          items:
   244            type: "object"
   245            properties:
   246              Path:
   247                type: "string"
   248              Weight:
   249                type: "integer"
   250                minimum: 0
   251        BlkioDeviceReadBps:
   252          description: |
   253            Limit read rate (bytes per second) from a device, in the form `[{"Path": "device_path", "Rate": rate}]`.
   254          type: "array"
   255          items:
   256            $ref: "#/definitions/ThrottleDevice"
   257        BlkioDeviceWriteBps:
   258          description: |
   259            Limit write rate (bytes per second) to a device, in the form `[{"Path": "device_path", "Rate": rate}]`.
   260          type: "array"
   261          items:
   262            $ref: "#/definitions/ThrottleDevice"
   263        BlkioDeviceReadIOps:
   264          description: |
   265            Limit read rate (IO per second) from a device, in the form `[{"Path": "device_path", "Rate": rate}]`.
   266          type: "array"
   267          items:
   268            $ref: "#/definitions/ThrottleDevice"
   269        BlkioDeviceWriteIOps:
   270          description: |
   271            Limit write rate (IO per second) to a device, in the form `[{"Path": "device_path", "Rate": rate}]`.
   272          type: "array"
   273          items:
   274            $ref: "#/definitions/ThrottleDevice"
   275        CpuPeriod:
   276          description: "The length of a CPU period in microseconds."
   277          type: "integer"
   278        CpuQuota:
   279          description: "Microseconds of CPU time that the container can get in a CPU period."
   280          type: "integer"
   281        CpusetCpus:
   282          description: "CPUs in which to allow execution (e.g., `0-3`, `0,1`)"
   283          type: "string"
   284        CpusetMems:
   285          description: "Memory nodes (MEMs) in which to allow execution (0-3, 0,1). Only effective on NUMA systems."
   286          type: "string"
   287        Devices:
   288          description: "A list of devices to add to the container."
   289          type: "array"
   290          items:
   291            $ref: "#/definitions/DeviceMapping"
   292        DiskQuota:
   293          description: "Disk limit (in bytes)."
   294          type: "integer"
   295          format: "int64"
   296        KernelMemory:
   297          description: "Kernel memory limit in bytes."
   298          type: "integer"
   299          format: "int64"
   300        MemoryReservation:
   301          description: "Memory soft limit in bytes."
   302          type: "integer"
   303          format: "int64"
   304        MemorySwap:
   305          description: "Total memory limit (memory + swap). Set as `-1` to enable unlimited swap."
   306          type: "integer"
   307          format: "int64"
   308        MemorySwappiness:
   309          description: "Tune a container's memory swappiness behavior. Accepts an integer between 0 and 100."
   310          type: "integer"
   311          format: "int64"
   312          minimum: 0
   313          maximum: 100
   314        OomKillDisable:
   315          description: "Disable OOM Killer for the container."
   316          type: "boolean"
   317        PidsLimit:
   318          description: "Tune a container's pids limit. Set -1 for unlimited."
   319          type: "integer"
   320          format: "int64"
   321        Ulimits:
   322          description: |
   323            A list of resource limits to set in the container. For example: `{"Name": "nofile", "Soft": 1024, "Hard": 2048}`"
   324          type: "array"
   325          items:
   326            type: "object"
   327            properties:
   328              Name:
   329                description: "Name of ulimit"
   330                type: "string"
   331              Soft:
   332                description: "Soft limit"
   333                type: "integer"
   334              Hard:
   335                description: "Hard limit"
   336                type: "integer"
   337        # Applicable to Windows
   338        CpuCount:
   339          description: "CPU count (Windows only)"
   340          type: "integer"
   341          format: "int64"
   342        CpuPercent:
   343          description: "CPU percent (Windows only)"
   344          type: "integer"
   345          format: "int64"
   346        IOMaximumIOps:
   347          description: "Maximum IOps for the container system drive (Windows only)"
   348          type: "integer"
   349          format: "int64"
   350        IOMaximumBandwidth:
   351          description: "Maximum IO in bytes per second for the container system drive (Windows only)"
   352          type: "integer"
   353          format: "int64"
   354  
   355    HostConfig:
   356      description: "Container configuration that depends on the host we are running on"
   357      allOf:
   358        - $ref: "#/definitions/Resources"
   359        - type: "object"
   360          properties:
   361            # Applicable to all platforms
   362            Binds:
   363              type: "array"
   364              description: |
   365                A list of volume bindings for this container. Each volume binding is a string in one of these forms:
   366  
   367                - `host-src:container-dest` to bind-mount a host path into the container. Both `host-src`, and `container-dest` must be an _absolute_ path.
   368                - `host-src:container-dest:ro` to make the bind-mount read-only inside the container. Both `host-src`, and `container-dest` must be an _absolute_ path.
   369                - `volume-name:container-dest` to bind-mount a volume managed by a volume driver into the container. `container-dest` must be an _absolute_ path.
   370                - `volume-name:container-dest:ro` to mount the volume read-only inside the container.  `container-dest` must be an _absolute_ path.
   371              items:
   372                type: "string"
   373            ContainerIDFile:
   374              type: "string"
   375              description: "Path to a file where the container ID is written"
   376            LogConfig:
   377              type: "object"
   378              description: "The logging configuration for this container"
   379              properties:
   380                Type:
   381                  type: "string"
   382                  enum:
   383                    - "json-file"
   384                    - "syslog"
   385                    - "journald"
   386                    - "gelf"
   387                    - "fluentd"
   388                    - "awslogs"
   389                    - "splunk"
   390                    - "etwlogs"
   391                    - "none"
   392                Config:
   393                  type: "object"
   394                  additionalProperties:
   395                    type: "string"
   396            NetworkMode:
   397              type: "string"
   398              description: "Network mode to use for this container. Supported standard values are: `bridge`, `host`, `none`, and `container:<name|id>`. Any other value is taken
   399                as a custom network's name to which this container should connect to."
   400            PortBindings:
   401              type: "object"
   402              description: "A map of exposed container ports and the host port they should map to."
   403              additionalProperties:
   404                type: "object"
   405                properties:
   406                  HostIp:
   407                    type: "string"
   408                    description: "The host IP address"
   409                  HostPort:
   410                    type: "string"
   411                    description: "The host port number, as a string"
   412            RestartPolicy:
   413              $ref: "#/definitions/RestartPolicy"
   414            AutoRemove:
   415              type: "boolean"
   416              description: "Automatically remove the container when the container's process exits. This has no effect if `RestartPolicy` is set."
   417            VolumeDriver:
   418              type: "string"
   419              description: "Driver that this container uses to mount volumes."
   420            VolumesFrom:
   421              type: "array"
   422              description: "A list of volumes to inherit from another container, specified in the form `<container name>[:<ro|rw>]`."
   423              items:
   424                type: "string"
   425            Mounts:
   426              description: "Specification for mounts to be added to the container."
   427              type: "array"
   428              items:
   429                $ref: "#/definitions/Mount"
   430  
   431            # Applicable to UNIX platforms
   432            CapAdd:
   433              type: "array"
   434              description: "A list of kernel capabilities to add to the container."
   435              items:
   436                type: "string"
   437            CapDrop:
   438              type: "array"
   439              description: "A list of kernel capabilities to drop from the container."
   440              items:
   441                type: "string"
   442            Dns:
   443              type: "array"
   444              description: "A list of DNS servers for the container to use."
   445              items:
   446                type: "string"
   447            DnsOptions:
   448              type: "array"
   449              description: "A list of DNS options."
   450              items:
   451                type: "string"
   452            DnsSearch:
   453              type: "array"
   454              description: "A list of DNS search domains."
   455              items:
   456                type: "string"
   457            ExtraHosts:
   458              type: "array"
   459              description: |
   460                A list of hostnames/IP mappings to add to the container's `/etc/hosts` file. Specified in the form `["hostname:IP"]`.
   461              items:
   462                type: "string"
   463            GroupAdd:
   464              type: "array"
   465              description: "A list of additional groups that the container process will run as."
   466              items:
   467                type: "string"
   468            IpcMode:
   469              type: "string"
   470              description: "IPC namespace to use for the container."
   471            Cgroup:
   472              type: "string"
   473              description: "Cgroup to use for the container."
   474            Links:
   475              type: "array"
   476              description: "A list of links for the container in the form `container_name:alias`."
   477              items:
   478                type: "string"
   479            OomScoreAdj:
   480              type: "integer"
   481              description: "An integer value containing the score given to the container in order to tune OOM killer preferences."
   482            PidMode:
   483              type: "string"
   484              description: |
   485                Set the PID (Process) Namespace mode for the container. It can be either:
   486  
   487                - `"container:<name|id>"`: joins another container's PID namespace
   488                - `"host"`: use the host's PID namespace inside the container
   489            Privileged:
   490              type: "boolean"
   491              description: "Gives the container full access to the host."
   492            PublishAllPorts:
   493              type: "boolean"
   494              description: "Allocates a random host port for all of a container's exposed ports."
   495            ReadonlyRootfs:
   496              type: "boolean"
   497              description: "Mount the container's root filesystem as read only."
   498            SecurityOpt:
   499              type: "array"
   500              description: "A list of string values to customize labels for MLS
   501              systems, such as SELinux."
   502              items:
   503                type: "string"
   504            StorageOpt:
   505              type: "object"
   506              description: |
   507                Storage driver options for this container, in the form `{"size": "120G"}`.
   508              additionalProperties:
   509                type: "string"
   510            Tmpfs:
   511              type: "object"
   512              description: "List of tmpfs mounts for this container."
   513              additionalProperties:
   514                type: "string"
   515            UTSMode:
   516              type: "string"
   517              description: "UTS namespace to use for the container."
   518            UsernsMode:
   519              type: "string"
   520              description: "Sets the usernamespace mode for the container when usernamespace remapping option is enabled."
   521            ShmSize:
   522              type: "integer"
   523              description: "Size of `/dev/shm` in bytes. If omitted, the system uses 64MB."
   524              minimum: 0
   525            Sysctls:
   526              type: "object"
   527              description: |
   528                A list of kernel parameters (sysctls) to set in the container. For example: `{ "net.ipv4.ip_forward": "1" }`
   529              additionalProperties:
   530                type: "string"
   531            Runtime:
   532              type: "string"
   533              description: "Runtime to use with this container."
   534            # Applicable to Windows
   535            ConsoleSize:
   536              type: "array"
   537              description: "Initial console size, as an `[height, width]` array. (Windows only)"
   538              minItems: 2
   539              maxItems: 2
   540              items:
   541                type: "integer"
   542                minimum: 0
   543            Isolation:
   544              type: "string"
   545              description: "Isolation technology of the container. (Windows only)"
   546              enum:
   547                - "default"
   548                - "process"
   549                - "hyperv"
   550  
   551    Config:
   552      description: "Configuration for a container that is portable between hosts"
   553      type: "object"
   554      properties:
   555        Hostname:
   556          description: "The hostname to use for the container, as a valid RFC 1123 hostname."
   557          type: "string"
   558        Domainname:
   559          description: "The domain name to use for the container."
   560          type: "string"
   561        User:
   562          description: "The user that commands are run as inside the container."
   563          type: "string"
   564        AttachStdin:
   565          description: "Whether to attach to stdin."
   566          type: "boolean"
   567          default: false
   568        AttachStdout:
   569          description: "Whether to attach to stdout."
   570          type: "boolean"
   571          default: true
   572        AttachStderr:
   573          description: "Whether to attach to stderr."
   574          type: "boolean"
   575          default: true
   576        ExposedPorts:
   577          description: |
   578            An object mapping ports to an empty object in the form:
   579  
   580            `{"<port>/<tcp|udp>": {}}`
   581          type: "object"
   582          additionalProperties:
   583            type: "object"
   584            enum:
   585              - {}
   586            default: {}
   587        Tty:
   588          description: "Attach standard streams to a TTY, including stdin if it is not closed."
   589          type: "boolean"
   590          default: false
   591        OpenStdin:
   592          description: "Open stdin"
   593          type: "boolean"
   594          default: false
   595        StdinOnce:
   596          description: "Close stdin after one attached client disconnects"
   597          type: "boolean"
   598          default: false
   599        Env:
   600          description: |
   601            A list of environment variables to set inside the container in the form `["VAR=value"[,"VAR2=value2"]]`
   602          type: "array"
   603          items:
   604            type: "string"
   605        Cmd:
   606          description: "Command to run specified as a string or an array of strings."
   607          type:
   608            - "array"
   609            - "string"
   610          items:
   611            type: "string"
   612        Healthcheck:
   613          description: "A test to perform to check that the container is healthy."
   614          type: "object"
   615          properties:
   616            Test:
   617              description: |
   618                The test to perform. Possible values are:
   619  
   620                - `{}` inherit healthcheck from image or parent image
   621                - `{"NONE"}` disable healthcheck
   622                - `{"CMD", args...}` exec arguments directly
   623                - `{"CMD-SHELL", command}` run command with system's default shell
   624              type: "array"
   625              items:
   626                type: "string"
   627            Interval:
   628              description: "The time to wait between checks in nanoseconds. 0 means inherit."
   629              type: "integer"
   630            Timeout:
   631              description: "The time to wait before considering the check to have hung. 0 means inherit."
   632              type: "integer"
   633            Retries:
   634              description: "The number of consecutive failures needed to consider a container as unhealthy. 0 means inherit."
   635              type: "integer"
   636        ArgsEscaped:
   637          description: "Command is already escaped (Windows only)"
   638          type: "boolean"
   639        Image:
   640          description: "The name of the image to use when creating the container"
   641          type: "string"
   642        Volumes:
   643          description: "An object mapping mount point paths inside the container to empty objects."
   644          type: "object"
   645          properties:
   646            additionalProperties:
   647              type: "object"
   648              enum:
   649                - {}
   650              default: {}
   651        WorkingDir:
   652          description: "The working directory for commands to run in."
   653          type: "string"
   654        Entrypoint:
   655          description: |
   656            The entry point for the container as a string or an array of strings.
   657  
   658            If the array consists of exactly one empty string (`[""]`) then the entry point is reset to system default (i.e., the entry point used by docker when there is no `ENTRYPOINT` instruction in the Dockerfile).
   659          type:
   660            - "array"
   661            - "string"
   662          items:
   663            type: "string"
   664        NetworkDisabled:
   665          description: "Disable networking for the container."
   666          type: "boolean"
   667        MacAddress:
   668          description: "MAC address of the container."
   669          type: "string"
   670        OnBuild:
   671          description: "`ONBUILD` metadata that were defined in the image's `Dockerfile`."
   672          type: "array"
   673          items:
   674            type: "string"
   675        Labels:
   676          description: "User-defined key/value data attached to the container."
   677          type: "object"
   678          additionalProperties:
   679            type: "string"
   680        StopSignal:
   681          description: "Signal to stop a container as a string or unsigned integer."
   682          type: "string"
   683          default: "SIGTERM"
   684        Shell:
   685          description: "Shell for when `RUN`, `CMD`, and `ENTRYPOINT` uses a shell."
   686          type: "array"
   687          items:
   688            type: "string"
   689  
   690    NetworkConfig:
   691      description: "TODO: check is correct"
   692      type: "object"
   693      properties:
   694        Bridge:
   695          type: "string"
   696        Gateway:
   697          type: "string"
   698        Address:
   699          type: "string"
   700        IPPrefixLen:
   701          type: "integer"
   702        MacAddress:
   703          type: "string"
   704        PortMapping:
   705          type: "string"
   706        Ports:
   707          type: "array"
   708          items:
   709            $ref: "#/definitions/Port"
   710  
   711    GraphDriver:
   712      description: "Information about this container's graph driver."
   713      type: "object"
   714      properties:
   715        Name:
   716          type: "string"
   717        Data:
   718          type: "object"
   719          additionalProperties:
   720            type: "string"
   721  
   722    Image:
   723      type: "object"
   724      properties:
   725        Id:
   726          type: "string"
   727        RepoTags:
   728          type: "array"
   729          items:
   730            type: "string"
   731        RepoDigests:
   732          type: "array"
   733          items:
   734            type: "string"
   735        Parent:
   736          type: "string"
   737        Comment:
   738          type: "string"
   739        Created:
   740          type: "string"
   741        Container:
   742          type: "string"
   743        ContainerConfig:
   744          $ref: "#/definitions/Config"
   745        DockerVersion:
   746          type: "string"
   747        Author:
   748          type: "string"
   749        Config:
   750          $ref: "#/definitions/Config"
   751        Architecture:
   752          type: "string"
   753        Os:
   754          type: "string"
   755        Size:
   756          type: "integer"
   757          format: "int64"
   758        VirtualSize:
   759          type: "integer"
   760          format: "int64"
   761        GraphDriver:
   762          $ref: "#/definitions/GraphDriver"
   763        RootFS:
   764          type: "object"
   765          properties:
   766            Type:
   767              type: "string"
   768            Layers:
   769              type: "array"
   770              items:
   771                type: "string"
   772            BaseLayer:
   773              type: "string"
   774  
   775    ImageSummary:
   776      type: "object"
   777      required:
   778        - Id
   779        - ParentId
   780        - RepoTags
   781        - RepoDigests
   782        - Created
   783        - Size
   784        - SharedSize
   785        - VirtualSize
   786        - Labels
   787        - Containers
   788      properties:
   789        Id:
   790          type: "string"
   791          x-nullable: false
   792        ParentId:
   793          type: "string"
   794          x-nullable: false
   795        RepoTags:
   796          type: "array"
   797          x-nullable: false
   798          items:
   799            type: "string"
   800        RepoDigests:
   801          type: "array"
   802          x-nullable: false
   803          items:
   804            type: "string"
   805        Created:
   806          type: "integer"
   807          x-nullable: false
   808        Size:
   809          type: "integer"
   810          x-nullable: false
   811        SharedSize:
   812          type: "integer"
   813          x-nullable: false
   814        VirtualSize:
   815          type: "integer"
   816          x-nullable: false
   817        Labels:
   818          type: "object"
   819          x-nullable: false
   820          additionalProperties:
   821            type: "string"
   822        Containers:
   823          x-nullable: false
   824          type: "integer"
   825  
   826    AuthConfig:
   827      type: "object"
   828      properties:
   829        username:
   830          type: "string"
   831        password:
   832          type: "string"
   833        email:
   834          type: "string"
   835        serveraddress:
   836          type: "string"
   837      example:
   838        username: "hannibal"
   839        password: "xxxx"
   840        serveraddress: "https://index.docker.io/v1/"
   841  
   842    ProcessConfig:
   843      type: "object"
   844      properties:
   845        privileged:
   846          type: "boolean"
   847        user:
   848          type: "string"
   849        tty:
   850          type: "boolean"
   851        entrypoint:
   852          type: "string"
   853        arguments:
   854          type: "array"
   855          items:
   856            type: "string"
   857  
   858    Volume:
   859      type: "object"
   860      required: [Name, Driver, Mountpoint, Labels, Scope, Options]
   861      properties:
   862        Name:
   863          type: "string"
   864          description: "Name of the volume."
   865          x-nullable: false
   866        Driver:
   867          type: "string"
   868          description: "Name of the volume driver used by the volume."
   869          x-nullable: false
   870        Mountpoint:
   871          type: "string"
   872          description: "Mount path of the volume on the host."
   873          x-nullable: false
   874        Status:
   875          type: "object"
   876          description: |
   877            Low-level details about the volume, provided by the volume driver.
   878            Details are returned as a map with key/value pairs:
   879            `{"key":"value","key2":"value2"}`.
   880  
   881            The `Status` field is optional, and is omitted if the volume driver
   882            does not support this feature.
   883          additionalProperties:
   884            type: "object"
   885        Labels:
   886          type: "object"
   887          description: "A mapping of abitrary key/value data set on this volume."
   888          x-nullable: false
   889          additionalProperties:
   890            type: "string"
   891        Scope:
   892          type: "string"
   893          description: "The level at which the volume exists. Either `global` for cluster-wide, or `local` for machine level."
   894          default: "local"
   895          x-nullable: false
   896          enum: ["local", "global"]
   897        Options:
   898          type: "object"
   899          description: "The driver specific options used when creating the volume."
   900          additionalProperties:
   901            type: "string"
   902        UsageData:
   903          type: "object"
   904          required: [Size, RefCount]
   905          properties:
   906            Size:
   907              type: "integer"
   908              description: "The disk space used by the volume (local driver only)"
   909              default: -1
   910              x-nullable: false
   911            RefCount:
   912              type: "integer"
   913              default: -1
   914              description: "The number of containers referencing this volume."
   915              x-nullable: false
   916  
   917      example:
   918        Name: "tardis"
   919        Driver: "custom"
   920        Mountpoint: "/var/lib/docker/volumes/tardis"
   921        Status:
   922          hello: "world"
   923        Labels:
   924          com.example.some-label: "some-value"
   925          com.example.some-other-label: "some-other-value"
   926        Scope: "local"
   927  
   928    Network:
   929      type: "object"
   930      properties:
   931        Name:
   932          type: "string"
   933        Id:
   934          type: "string"
   935        Scope:
   936          type: "string"
   937        Driver:
   938          type: "string"
   939        EnableIPv6:
   940          type: "boolean"
   941        IPAM:
   942          $ref: "#/definitions/IPAM"
   943        Internal:
   944          type: "boolean"
   945        Containers:
   946          type: "object"
   947          additionalProperties:
   948            $ref: "#/definitions/NetworkContainer"
   949        Options:
   950          type: "object"
   951          additionalProperties:
   952            type: "string"
   953        Labels:
   954          type: "object"
   955          additionalProperties:
   956            type: "string"
   957      example:
   958        Name: "net01"
   959        Id: "7d86d31b1478e7cca9ebed7e73aa0fdeec46c5ca29497431d3007d2d9e15ed99"
   960        Scope: "local"
   961        Driver: "bridge"
   962        EnableIPv6: false
   963        IPAM:
   964          Driver: "default"
   965          Config:
   966            - Subnet: "172.19.0.0/16"
   967              Gateway: "172.19.0.1"
   968          Options:
   969            foo: "bar"
   970        Internal: false
   971        Containers:
   972          19a4d5d687db25203351ed79d478946f861258f018fe384f229f2efa4b23513c:
   973            Name: "test"
   974            EndpointID: "628cadb8bcb92de107b2a1e516cbffe463e321f548feb37697cce00ad694f21a"
   975            MacAddress: "02:42:ac:13:00:02"
   976            IPv4Address: "172.19.0.2/16"
   977            IPv6Address: ""
   978        Options:
   979          com.docker.network.bridge.default_bridge: "true"
   980          com.docker.network.bridge.enable_icc: "true"
   981          com.docker.network.bridge.enable_ip_masquerade: "true"
   982          com.docker.network.bridge.host_binding_ipv4: "0.0.0.0"
   983          com.docker.network.bridge.name: "docker0"
   984          com.docker.network.driver.mtu: "1500"
   985        Labels:
   986          com.example.some-label: "some-value"
   987          com.example.some-other-label: "some-other-value"
   988    IPAM:
   989      type: "object"
   990      properties:
   991        Config:
   992          type: "array"
   993          items:
   994            type: "object"
   995            additionalProperties:
   996              type: "string"
   997  
   998    NetworkContainer:
   999      type: "object"
  1000      properties:
  1001        EndpointID:
  1002          type: "string"
  1003        MacAddress:
  1004          type: "string"
  1005        IPv4Address:
  1006          type: "string"
  1007        IPv6Address:
  1008          type: "string"
  1009  
  1010    BuildInfo:
  1011      type: "object"
  1012      properties:
  1013        id:
  1014          type: "string"
  1015        stream:
  1016          type: "string"
  1017        error:
  1018          type: "string"
  1019        errorDetail:
  1020          $ref: "#/definitions/ErrorDetail"
  1021        status:
  1022          type: "string"
  1023        progress:
  1024          type: "string"
  1025        progressDetail:
  1026          $ref: "#/definitions/ProgressDetail"
  1027  
  1028    CreateImageInfo:
  1029      type: "object"
  1030      properties:
  1031        error:
  1032          type: "string"
  1033        status:
  1034          type: "string"
  1035        progress:
  1036          type: "string"
  1037        progressDetail:
  1038          $ref: "#/definitions/ProgressDetail"
  1039  
  1040    PushImageInfo:
  1041      type: "object"
  1042      properties:
  1043        error:
  1044          type: "string"
  1045        status:
  1046          type: "string"
  1047        progress:
  1048          type: "string"
  1049        progressDetail:
  1050          $ref: "#/definitions/ProgressDetail"
  1051    ErrorDetail:
  1052      type: "object"
  1053      properties:
  1054        code:
  1055          type: "integer"
  1056        message:
  1057          type: "string"
  1058    ProgressDetail:
  1059      type: "object"
  1060      properties:
  1061        code:
  1062          type: "integer"
  1063        message:
  1064          type: "integer"
  1065  
  1066    Error:
  1067      description: "Represents an error."
  1068      type: "object"
  1069      required: ["message"]
  1070      properties:
  1071        message:
  1072          description: "The error message."
  1073          type: "string"
  1074      example:
  1075        message: "Something went wrong."
  1076  
  1077    EndpointSettings:
  1078      description: "Configuration for a network endpoint."
  1079      type: "object"
  1080      properties:
  1081        IPAMConfig:
  1082          description: "IPAM configurations for the endpoint"
  1083          type: "object"
  1084          properties:
  1085            IPv4Address:
  1086              type: "string"
  1087            IPv6Address:
  1088              type: "string"
  1089            LinkLocalIPs:
  1090              type: "array"
  1091              items:
  1092                type: "string"
  1093        Links:
  1094          type: "array"
  1095          items:
  1096            type: "string"
  1097        Aliases:
  1098          type: "array"
  1099          items:
  1100            type: "string"
  1101        NetworkID:
  1102          type: "string"
  1103        EndpointID:
  1104          type: "string"
  1105        Gateway:
  1106          type: "string"
  1107        IPAddress:
  1108          type: "string"
  1109        IPPrefixLen:
  1110          type: "integer"
  1111        IPv6Gateway:
  1112          type: "string"
  1113        GlobalIPv6Address:
  1114          type: "string"
  1115        GlobalIPv6PrefixLen:
  1116          type: "integer"
  1117          format: "int64"
  1118        MacAddress:
  1119          type: "string"
  1120  
  1121    PluginMount:
  1122      type: "object"
  1123      x-nullable: false
  1124      required: [Name, Description, Settable, Source, Destination, Type, Options]
  1125      properties:
  1126        Name:
  1127          type: "string"
  1128          x-nullable: false
  1129        Description:
  1130          type: "string"
  1131          x-nullable: false
  1132        Settable:
  1133          type: "array"
  1134          items:
  1135            type: "string"
  1136        Source:
  1137          type: "string"
  1138        Destination:
  1139          type: "string"
  1140          x-nullable: false
  1141        Type:
  1142          type: "string"
  1143          x-nullable: false
  1144        Options:
  1145          type: "array"
  1146          items:
  1147            type: "string"
  1148  
  1149    PluginDevice:
  1150      type: "object"
  1151      required: [Name, Description, Settable, Path]
  1152      x-nullable: false
  1153      properties:
  1154        Name:
  1155          type: "string"
  1156          x-nullable: false
  1157        Description:
  1158          type: "string"
  1159          x-nullable: false
  1160        Settable:
  1161          type: "array"
  1162          items:
  1163            type: "string"
  1164        Path:
  1165          type: "string"
  1166  
  1167    PluginEnv:
  1168      type: "object"
  1169      x-nullable: false
  1170      required: [Name, Description, Settable, Value]
  1171      properties:
  1172        Name:
  1173          x-nullable: false
  1174          type: "string"
  1175        Description:
  1176          x-nullable: false
  1177          type: "string"
  1178        Settable:
  1179          type: "array"
  1180          items:
  1181            type: "string"
  1182        Value:
  1183          type: "string"
  1184  
  1185    PluginInterfaceType:
  1186      type: "object"
  1187      x-nullable: false
  1188      required: [Prefix, Capability, Version]
  1189      properties:
  1190        Prefix:
  1191          type: "string"
  1192          x-nullable: false
  1193        Capability:
  1194          type: "string"
  1195          x-nullable: false
  1196        Version:
  1197          type: "string"
  1198          x-nullable: false
  1199  
  1200    Plugin:
  1201      description: "A plugin for the Remote API"
  1202      type: "object"
  1203      required: [Config, Enabled, Manifest, Name, Tag]
  1204      properties:
  1205        Id:
  1206          type: "string"
  1207        Name:
  1208          type: "string"
  1209          x-nullable: false
  1210        Tag:
  1211          type: "string"
  1212          x-nullable: false
  1213        Enabled:
  1214          description: "True when the plugin is running. False when the plugin is not running, only installed."
  1215          type: "boolean"
  1216          x-nullable: false
  1217        Config:
  1218          description: "Settings that can be modified by users."
  1219          type: "object"
  1220          x-nullable: false
  1221          required: [Args, Devices, Env, Mounts]
  1222          properties:
  1223            Mounts:
  1224              type: "array"
  1225              items:
  1226                $ref: "#/definitions/PluginMount"
  1227            Env:
  1228              type: "array"
  1229              items:
  1230                type: "string"
  1231            Args:
  1232              type: "array"
  1233              items:
  1234                type: "string"
  1235            Devices:
  1236              type: "array"
  1237              items:
  1238                $ref: "#/definitions/PluginDevice"
  1239        Manifest:
  1240          description: "The manifest of a plugin."
  1241          type: "object"
  1242          x-nullable: false
  1243          required:
  1244            - ManifestVersion
  1245            - Description
  1246            - Documentation
  1247            - Interface
  1248            - Entrypoint
  1249            - Workdir
  1250            - Network
  1251            - Capabilities
  1252            - Mounts
  1253            - Devices
  1254            - Env
  1255            - Args
  1256          properties:
  1257            ManifestVersion:
  1258              type: "string"
  1259              x-nullable: false
  1260            Description:
  1261              type: "string"
  1262              x-nullable: false
  1263            Documentation:
  1264              type: "string"
  1265              x-nullable: false
  1266            Interface:
  1267              description: "The interface between Docker and the plugin"
  1268              x-nullable: false
  1269              type: "object"
  1270              required: [Types, Socket]
  1271              properties:
  1272                Types:
  1273                  type: "array"
  1274                  items:
  1275                    $ref: "#/definitions/PluginInterfaceType"
  1276                Socket:
  1277                  type: "string"
  1278                  x-nullable: false
  1279            Entrypoint:
  1280              type: "array"
  1281              items:
  1282                type: "string"
  1283            Workdir:
  1284              type: "string"
  1285              x-nullable: false
  1286            User:
  1287              type: "object"
  1288              x-nullable: false
  1289              properties:
  1290                UID:
  1291                  type: "integer"
  1292                  format: "uint32"
  1293                GID:
  1294                  type: "integer"
  1295                  format: "uint32"
  1296            Network:
  1297              type: "object"
  1298              x-nullable: false
  1299              required: [Type]
  1300              properties:
  1301                Type:
  1302                  x-nullable: false
  1303                  type: "string"
  1304            Capabilities:
  1305              type: "array"
  1306              items:
  1307                type: "string"
  1308            Mounts:
  1309              type: "array"
  1310              items:
  1311                $ref: "#/definitions/PluginMount"
  1312            Devices:
  1313              type: "array"
  1314              items:
  1315                $ref: "#/definitions/PluginDevice"
  1316            Env:
  1317              type: "array"
  1318              items:
  1319                $ref: "#/definitions/PluginEnv"
  1320            Args:
  1321              type: "object"
  1322              x-nullable: false
  1323              required: [Name, Description, Settable, Value]
  1324              properties:
  1325                Name:
  1326                  x-nullable: false
  1327                  type: "string"
  1328                Description:
  1329                  x-nullable: false
  1330                  type: "string"
  1331                Settable:
  1332                  type: "array"
  1333                  items:
  1334                    type: "string"
  1335                Value:
  1336                  type: "array"
  1337                  items:
  1338                    type: "string"
  1339      example:
  1340        Id: "5724e2c8652da337ab2eedd19fc6fc0ec908e4bd907c7421bf6a8dfc70c4c078"
  1341        Name: "tiborvass/no-remove"
  1342        Tag: "latest"
  1343        Active: true
  1344        Config:
  1345          Mounts:
  1346            - Name: ""
  1347              Description: ""
  1348              Settable: null
  1349              Source: "/data"
  1350              Destination: "/data"
  1351              Type: "bind"
  1352              Options:
  1353                - "shared"
  1354                - "rbind"
  1355            - Name: ""
  1356              Description: ""
  1357              Settable: null
  1358              Source: null
  1359              Destination: "/foobar"
  1360              Type: "tmpfs"
  1361              Options: null
  1362          Env:
  1363            - "DEBUG=1"
  1364          Args: null
  1365          Devices: null
  1366        Manifest:
  1367          ManifestVersion: "v0"
  1368          Description: "A test plugin for Docker"
  1369          Documentation: "https://docs.docker.com/engine/extend/plugins/"
  1370          Interface:
  1371            Types:
  1372              - "docker.volumedriver/1.0"
  1373            Socket: "plugins.sock"
  1374          Entrypoint:
  1375            - "plugin-no-remove"
  1376            - "/data"
  1377          Workdir: ""
  1378          User: {}
  1379          Network:
  1380            Type: "host"
  1381          Capabilities: null
  1382          Mounts:
  1383            - Name: ""
  1384              Description: ""
  1385              Settable: null
  1386              Source: "/data"
  1387              Destination: "/data"
  1388              Type: "bind"
  1389              Options:
  1390                - "shared"
  1391                - "rbind"
  1392            - Name: ""
  1393              Description: ""
  1394              Settable: null
  1395              Source: null
  1396              Destination: "/foobar"
  1397              Type: "tmpfs"
  1398              Options: null
  1399          Devices:
  1400            - Name: "device"
  1401              Description: "a host device to mount"
  1402              Settable: null
  1403              Path: "/dev/cpu_dma_latency"
  1404          Env:
  1405            - Name: "DEBUG"
  1406              Description: "If set, prints debug messages"
  1407              Settable: null
  1408              Value: "1"
  1409          Args:
  1410            Name: "args"
  1411            Description: "command line arguments"
  1412            Settable: null
  1413            Value: []
  1414  
  1415    NodeSpec:
  1416      type: "object"
  1417      properties:
  1418        Name:
  1419          description: "Name for the node."
  1420          type: "string"
  1421        Labels:
  1422          description: "User-defined key/value metadata."
  1423          type: "object"
  1424          additionalProperties:
  1425            type: "string"
  1426        Role:
  1427          description: "Role of the node."
  1428          type: "string"
  1429          enum:
  1430            - "worker"
  1431            - "manager"
  1432        Availability:
  1433          description: "Availability of the node."
  1434          type: "string"
  1435          enum:
  1436            - "active"
  1437            - "pause"
  1438            - "drain"
  1439      example:
  1440        Availability: "active"
  1441        Name: "node-name"
  1442        Role: "manager"
  1443        Labels:
  1444          foo: "bar"
  1445    Node:
  1446      type: "object"
  1447      properties:
  1448        ID:
  1449          type: "string"
  1450        Version:
  1451          type: "object"
  1452          properties:
  1453            Index:
  1454              type: "integer"
  1455              format: "int64"
  1456        CreatedAt:
  1457          type: "string"
  1458          format: "dateTime"
  1459        UpdatedAt:
  1460          type: "string"
  1461          format: "dateTime"
  1462        Spec:
  1463          $ref: "#/definitions/NodeSpec"
  1464        Description:
  1465          type: "object"
  1466          properties:
  1467            Hostname:
  1468              type: "string"
  1469            Platform:
  1470              type: "object"
  1471              properties:
  1472                Architecture:
  1473                  type: "string"
  1474                OS:
  1475                  type: "string"
  1476            Resources:
  1477              type: "object"
  1478              properties:
  1479                NanoCPUs:
  1480                  type: "integer"
  1481                  format: "int64"
  1482                MemoryBytes:
  1483                  type: "integer"
  1484                  format: "int64"
  1485            Engine:
  1486              type: "object"
  1487              properties:
  1488                EngineVersion:
  1489                  type: "string"
  1490                Labels:
  1491                  type: "object"
  1492                  additionalProperties:
  1493                    type: "string"
  1494                Plugins:
  1495                  type: "array"
  1496                  items:
  1497                    type: "object"
  1498                    properties:
  1499                      Type:
  1500                        type: "string"
  1501                      Name:
  1502                        type: "string"
  1503      example:
  1504        ID: "24ifsmvkjbyhk"
  1505        Version:
  1506          Index: 8
  1507        CreatedAt: "2016-06-07T20:31:11.853781916Z"
  1508        UpdatedAt: "2016-06-07T20:31:11.999868824Z"
  1509        Spec:
  1510          Name: "my-node"
  1511          Role: "manager"
  1512          Availability: "active"
  1513          Labels:
  1514            foo: "bar"
  1515        Description:
  1516          Hostname: "bf3067039e47"
  1517          Platform:
  1518            Architecture: "x86_64"
  1519            OS: "linux"
  1520          Resources:
  1521            NanoCPUs: 4000000000
  1522            MemoryBytes: 8272408576
  1523          Engine:
  1524            EngineVersion: "1.12.0-dev"
  1525            Labels:
  1526              foo: "bar"
  1527            Plugins:
  1528              - Type: "Volume"
  1529                Name: "local"
  1530              - Type: "Network"
  1531                Name: "bridge"
  1532              - Type: "Network"
  1533                Name: "null"
  1534              - Type: "Network"
  1535                Name: "overlay"
  1536        Status:
  1537          State: "ready"
  1538        ManagerStatus:
  1539          Leader: true
  1540          Reachability: "reachable"
  1541          Addr: "172.17.0.2:2377"
  1542    SwarmSpec:
  1543      description: "User modifiable swarm configuration."
  1544      type: "object"
  1545      properties:
  1546        Name:
  1547          description: "Name of the swarm."
  1548          type: "string"
  1549        Labels:
  1550          description: "User-defined key/value metadata."
  1551          type: "object"
  1552          additionalProperties:
  1553            type: "string"
  1554        Orchestration:
  1555          description: "Orchestration configuration."
  1556          type: "object"
  1557          properties:
  1558            TaskHistoryRetentionLimit:
  1559              description: "The number of historic tasks to keep per instance or node. If negative, never remove completed or failed tasks."
  1560              type: "integer"
  1561              format: "int64"
  1562        Raft:
  1563          description: "Raft configuration."
  1564          type: "object"
  1565          properties:
  1566            SnapshotInterval:
  1567              description: "The number of log entries between snapshots."
  1568              type: "integer"
  1569              format: "int64"
  1570            KeepOldSnapshots:
  1571              description: "The number of snapshots to keep beyond the current snapshot."
  1572              type: "integer"
  1573              format: "int64"
  1574            LogEntriesForSlowFollowers:
  1575              description: "The number of log entries to keep around to sync up slow followers after a snapshot is created."
  1576              type: "integer"
  1577              format: "int64"
  1578            ElectionTick:
  1579              description: |
  1580                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`.
  1581  
  1582                A tick currently defaults to one second, so these translate directly to seconds currently, but this is NOT guaranteed.
  1583              type: "integer"
  1584            HeartbeatTick:
  1585              description: |
  1586                The number of ticks between heartbeats. Every HeartbeatTick ticks, the leader will send a heartbeat to the followers.
  1587  
  1588                A tick currently defaults to one second, so these translate directly to seconds currently, but this is NOT guaranteed.
  1589              type: "integer"
  1590        Dispatcher:
  1591          description: "Dispatcher configuration."
  1592          type: "object"
  1593          properties:
  1594            HeartbeatPeriod:
  1595              description: "The delay for an agent to send a heartbeat to the dispatcher."
  1596              type: "integer"
  1597              format: "int64"
  1598        CAConfig:
  1599          description: "CA configuration."
  1600          type: "object"
  1601          properties:
  1602            NodeCertExpiry:
  1603              description: "The duration node certificates are issued for."
  1604              type: "integer"
  1605              format: "int64"
  1606            ExternalCAs:
  1607              description: "Configuration for forwarding signing requests to an external certificate authority."
  1608              type: "array"
  1609              items:
  1610                type: "object"
  1611                properties:
  1612                  Protocol:
  1613                    description: "Protocol for communication with the external CA
  1614            (currently only `cfssl` is supported)."
  1615                    type: "string"
  1616                    enum:
  1617                      - "cfssl"
  1618                    default: "cfssl"
  1619                  URL:
  1620                    description: "URL where certificate signing requests should be sent."
  1621                    type: "string"
  1622                  Options:
  1623                    description: "An object with key/value pairs that are interpreted as protocol-specific options for the external CA driver."
  1624                    type: "object"
  1625                    additionalProperties:
  1626                      type: "string"
  1627        TaskDefaults:
  1628          description: "Defaults for creating tasks in this cluster."
  1629          type: "object"
  1630          properties:
  1631            LogDriver:
  1632              description: |
  1633                The log driver to use for tasks created in the orchestrator if unspecified by a service.
  1634  
  1635                Updating this value will only have an affect on new tasks. Old tasks will continue use their previously configured log driver until recreated.
  1636              type: "object"
  1637              properties:
  1638                Name:
  1639                  type: "string"
  1640                Options:
  1641                  type: "object"
  1642                  additionalProperties:
  1643                    type: "string"
  1644      example:
  1645        Name: "default"
  1646        Orchestration:
  1647          TaskHistoryRetentionLimit: 10
  1648        Raft:
  1649          SnapshotInterval: 10000
  1650          LogEntriesForSlowFollowers: 500
  1651          HeartbeatTick: 1
  1652          ElectionTick: 3
  1653        Dispatcher:
  1654          HeartbeatPeriod: 5000000000
  1655        CAConfig:
  1656          NodeCertExpiry: 7776000000000000
  1657        JoinTokens:
  1658          Worker: "SWMTKN-1-3pu6hszjas19xyp7ghgosyx9k8atbfcr8p2is99znpy26u2lkl-1awxwuwd3z9j1z3puu7rcgdbx"
  1659          Manager: "SWMTKN-1-3pu6hszjas19xyp7ghgosyx9k8atbfcr8p2is99znpy26u2lkl-7p73s1dx5in4tatdymyhg9hu2"
  1660    # The Swarm information for `GET /info`. It is the same as `GET /swarm`, but
  1661    # without `JoinTokens`.
  1662    ClusterInfo:
  1663      type: "object"
  1664      properties:
  1665        ID:
  1666          description: "The ID of the swarm."
  1667          type: "string"
  1668        Version:
  1669          type: "object"
  1670          properties:
  1671            Index:
  1672              type: "integer"
  1673              format: "int64"
  1674        CreatedAt:
  1675          type: "string"
  1676          format: "dateTime"
  1677        UpdatedAt:
  1678          type: "string"
  1679          format: "dateTime"
  1680        Spec:
  1681          $ref: "#/definitions/SwarmSpec"
  1682    TaskSpec:
  1683      description: "User modifiable task configuration."
  1684      properties:
  1685        ContainerSpec:
  1686          type: "object"
  1687          properties:
  1688            Image:
  1689              description: "The image name to use for the container."
  1690              type: "string"
  1691            Command:
  1692              description: "The command to be run in the image."
  1693              type: "array"
  1694              items:
  1695                type: "string"
  1696            Args:
  1697              description: "Arguments to the command."
  1698              type: "array"
  1699              items:
  1700                type: "string"
  1701            Env:
  1702              description: "A list of environment variables in the form `VAR=value`."
  1703              type: "array"
  1704              items:
  1705                type: "string"
  1706            Dir:
  1707              description: "The working directory for commands to run in."
  1708              type: "string"
  1709            User:
  1710              description: "The user inside the container."
  1711              type: "string"
  1712            Labels:
  1713              description: "A map of labels to associate with the service."
  1714              type: "object"
  1715              additionalProperties:
  1716                type: "string"
  1717            Mounts:
  1718              description: "Specification for mounts to be added to containers created as part of the service."
  1719              type: "array"
  1720              items:
  1721                $ref: "#/definitions/Mount"
  1722            StopGracePeriod:
  1723              description: "Amount of time to wait for the container to terminate before forcefully killing it."
  1724              type: "integer"
  1725              format: "int64"
  1726        Resources:
  1727          description: "Resource requirements which apply to each individual container created as part of the service."
  1728          type: "object"
  1729          properties:
  1730            Limits:
  1731              description: "Define resources limits."
  1732              type: "object"
  1733              properties:
  1734                NanoCPUs:
  1735                  description: "CPU limit in units of 10<sup>-9</sup> CPU shares."
  1736                  type: "integer"
  1737                  format: "int64"
  1738                MemoryBytes:
  1739                  description: "Memory limit in Bytes."
  1740                  type: "integer"
  1741                  format: "int64"
  1742            Reservation:
  1743              description: "Define resources reservation."
  1744              properties:
  1745                NanoCPUs:
  1746                  description: "CPU reservation in units of 10<sup>-9</sup> CPU shares."
  1747                  type: "integer"
  1748                  format: "int64"
  1749                MemoryBytes:
  1750                  description: "Memory reservation in Bytes."
  1751                  type: "integer"
  1752                  format: "int64"
  1753        RestartPolicy:
  1754          description: "Specification for the restart policy which applies to containers created as part of this service."
  1755          type: "object"
  1756          properties:
  1757            Condition:
  1758              description: "Condition for restart."
  1759              type: "string"
  1760              enum:
  1761                - "none"
  1762                - "on-failure"
  1763                - "any"
  1764            Delay:
  1765              description: "Delay between restart attempts."
  1766              type: "integer"
  1767              format: "int64"
  1768            MaxAttempts:
  1769              description: "Maximum attempts to restart a given container before giving up (default value is 0, which is ignored)."
  1770              type: "integer"
  1771              format: "int64"
  1772              default: 0
  1773            Window:
  1774              description: "Windows is the time window used to evaluate the restart policy (default value is 0, which is unbounded)."
  1775              type: "integer"
  1776              format: "int64"
  1777              default: 0
  1778        Placement:
  1779          type: "object"
  1780          properties:
  1781            Constraints:
  1782              description: "An array of constraints."
  1783              type: "array"
  1784              items:
  1785                type: "string"
  1786        Networks:
  1787          type: "array"
  1788          items:
  1789            type: "object"
  1790            properties:
  1791              Target:
  1792                type: "string"
  1793              Aliases:
  1794                type: "array"
  1795                items:
  1796                  type: "string"
  1797        LogDriver:
  1798          description: "Specifies the log driver to use for tasks created from this spec. If not present, the default one for the swarm will be used, finally falling back to the engine default if not specified."
  1799          type: "object"
  1800          properties:
  1801            Name:
  1802              type: "string"
  1803            Options:
  1804              type: "object"
  1805              additionalProperties:
  1806                type: "string"
  1807    TaskState:
  1808      type: "string"
  1809      enum:
  1810        - "new"
  1811        - "allocated"
  1812        - "pending"
  1813        - "assigned"
  1814        - "accepted"
  1815        - "preparing"
  1816        - "ready"
  1817        - "starting"
  1818        - "running"
  1819        - "complete"
  1820        - "shutdown"
  1821        - "failed"
  1822        - "rejected"
  1823    Task:
  1824      type: "object"
  1825      properties:
  1826        ID:
  1827          description: "The ID of the task."
  1828          type: "string"
  1829        Version:
  1830          type: "object"
  1831          properties:
  1832            Index:
  1833              type: "integer"
  1834              format: "int64"
  1835        CreatedAt:
  1836          type: "string"
  1837          format: "dateTime"
  1838        UpdatedAt:
  1839          type: "string"
  1840          format: "dateTime"
  1841        Name:
  1842          description: "Name of the task."
  1843          type: "string"
  1844        Labels:
  1845          description: "User-defined key/value metadata."
  1846          type: "object"
  1847          additionalProperties:
  1848            type: "string"
  1849        Spec:
  1850          $ref: "#/definitions/TaskSpec"
  1851        ServiceID:
  1852          description: "The ID of the service this task is part of."
  1853          type: "string"
  1854        Slot:
  1855          type: "integer"
  1856        NodeID:
  1857          description: "The ID of the node that this task is on."
  1858          type: "string"
  1859        Status:
  1860          type: "object"
  1861          properties:
  1862            Timestamp:
  1863              type: "string"
  1864              format: "dateTime"
  1865            State:
  1866              $ref: "#/definitions/TaskState"
  1867            Message:
  1868              type: "string"
  1869            Err:
  1870              type: "string"
  1871            ContainerStatus:
  1872              type: "object"
  1873              properties:
  1874                ContainerID:
  1875                  type: "string"
  1876                PID:
  1877                  type: "integer"
  1878                ExitCode:
  1879                  type: "integer"
  1880        DesiredState:
  1881          $ref: "#/definitions/TaskState"
  1882      example:
  1883        ID: "0kzzo1i0y4jz6027t0k7aezc7"
  1884        Version:
  1885          Index: 71
  1886        CreatedAt: "2016-06-07T21:07:31.171892745Z"
  1887        UpdatedAt: "2016-06-07T21:07:31.376370513Z"
  1888        Spec:
  1889          ContainerSpec:
  1890            Image: "redis"
  1891          Resources:
  1892            Limits: {}
  1893            Reservations: {}
  1894          RestartPolicy:
  1895            Condition: "any"
  1896            MaxAttempts: 0
  1897          Placement: {}
  1898        ServiceID: "9mnpnzenvg8p8tdbtq4wvbkcz"
  1899        Slot: 1
  1900        NodeID: "60gvrl6tm78dmak4yl7srz94v"
  1901        Status:
  1902          Timestamp: "2016-06-07T21:07:31.290032978Z"
  1903          State: "running"
  1904          Message: "started"
  1905          ContainerStatus:
  1906            ContainerID: "e5d62702a1b48d01c3e02ca1e0212a250801fa8d67caca0b6f35919ebc12f035"
  1907            PID: 677
  1908        DesiredState: "running"
  1909        NetworksAttachments:
  1910          - Network:
  1911              ID: "4qvuz4ko70xaltuqbt8956gd1"
  1912              Version:
  1913                Index: 18
  1914              CreatedAt: "2016-06-07T20:31:11.912919752Z"
  1915              UpdatedAt: "2016-06-07T21:07:29.955277358Z"
  1916              Spec:
  1917                Name: "ingress"
  1918                Labels:
  1919                  com.docker.swarm.internal: "true"
  1920                DriverConfiguration: {}
  1921                IPAMOptions:
  1922                  Driver: {}
  1923                  Configs:
  1924                    - Subnet: "10.255.0.0/16"
  1925                      Gateway: "10.255.0.1"
  1926              DriverState:
  1927                Name: "overlay"
  1928                Options:
  1929                  com.docker.network.driver.overlay.vxlanid_list: "256"
  1930              IPAMOptions:
  1931                Driver:
  1932                  Name: "default"
  1933                Configs:
  1934                  - Subnet: "10.255.0.0/16"
  1935                    Gateway: "10.255.0.1"
  1936            Addresses:
  1937              - "10.255.0.10/16"
  1938    ServiceSpec:
  1939      description: "User modifiable configuration for a service."
  1940      properties:
  1941        Name:
  1942          description: "Name of the service."
  1943          type: "string"
  1944        Labels:
  1945          description: "User-defined key/value metadata."
  1946          type: "object"
  1947          additionalProperties:
  1948            type: "string"
  1949        TaskTemplate:
  1950          $ref: "#/definitions/TaskSpec"
  1951        Mode:
  1952          description: "Scheduling mode for the service."
  1953          type: "object"
  1954          properties:
  1955            Replicated:
  1956              type: "object"
  1957              properties:
  1958                Replicas:
  1959                  type: "integer"
  1960                  format: "int64"
  1961            Global:
  1962              type: "object"
  1963        UpdateConfig:
  1964          description: "Specification for the update strategy of the service."
  1965          type: "object"
  1966          properties:
  1967            Parallelism:
  1968              description: "Maximum number of tasks to be updated in one iteration (0 means unlimited parallelism)."
  1969              type: "integer"
  1970              format: "int64"
  1971            Delay:
  1972              description: "Amount of time between updates."
  1973              type: "integer"
  1974              format: "int64"
  1975            FailureAction:
  1976              description: "Action to take if an updated task fails to run, or stops running during the update."
  1977              type: "string"
  1978              enum:
  1979                - "continue"
  1980                - "pause"
  1981        Networks:
  1982          description: "Array of network names or IDs to attach the service to."
  1983          type: "array"
  1984          items:
  1985            type: "object"
  1986            properties:
  1987              Target:
  1988                type: "string"
  1989              Aliases:
  1990                type: "array"
  1991                items:
  1992                  type: "string"
  1993        EndpointSpec:
  1994          $ref: "#/definitions/EndpointSpec"
  1995    EndpointPortConfig:
  1996      type: "object"
  1997      properties:
  1998        Name:
  1999          type: "string"
  2000        Protocol:
  2001          type: "string"
  2002          enum:
  2003            - "tcp"
  2004            - "udp"
  2005        TargetPort:
  2006          description: "The port inside the container."
  2007          type: "integer"
  2008        PublishedPort:
  2009          description: "The port on the swarm hosts."
  2010          type: "integer"
  2011    EndpointSpec:
  2012      description: "Properties that can be configured to access and load balance a service."
  2013      type: "object"
  2014      properties:
  2015        Mode:
  2016          description: "The mode of resolution to use for internal load balancing
  2017        between tasks."
  2018          type: "string"
  2019          enum:
  2020            - "vip"
  2021            - "dnsrr"
  2022          default: "vip"
  2023        Ports:
  2024          description: "List of exposed ports that this service is accessible on from the outside. Ports can only be provided if `vip` resolution mode is used."
  2025          type: "array"
  2026          items:
  2027            $ref: "#/definitions/EndpointPortConfig"
  2028    Service:
  2029      type: "object"
  2030      properties:
  2031        ID:
  2032          type: "string"
  2033        Version:
  2034          type: "object"
  2035          properties:
  2036            Index:
  2037              type: "integer"
  2038              format: "int64"
  2039        CreatedAt:
  2040          type: "string"
  2041          format: "dateTime"
  2042        UpdatedAt:
  2043          type: "string"
  2044          format: "dateTime"
  2045        Spec:
  2046          $ref: "#/definitions/ServiceSpec"
  2047        Endpoint:
  2048          type: "object"
  2049          properties:
  2050            Spec:
  2051              $ref: "#/definitions/EndpointSpec"
  2052            Ports:
  2053              type: "array"
  2054              items:
  2055                $ref: "#/definitions/EndpointPortConfig"
  2056            VirtualIPs:
  2057              type: "array"
  2058              items:
  2059                type: "object"
  2060                properties:
  2061                  NetworkID:
  2062                    type: "string"
  2063                  Addr:
  2064                    type: "string"
  2065        UpdateStatus:
  2066          description: "The status of a service update."
  2067          type: "object"
  2068          properties:
  2069            State:
  2070              type: "string"
  2071              enum:
  2072                - "updating"
  2073                - "paused"
  2074                - "completed"
  2075            StartedAt:
  2076              type: "string"
  2077              format: "dateTime"
  2078            CompletedAt:
  2079              type: "string"
  2080              format: "dateTime"
  2081            Message:
  2082              type: "string"
  2083      example:
  2084        ID: "9mnpnzenvg8p8tdbtq4wvbkcz"
  2085        Version:
  2086          Index: 19
  2087        CreatedAt: "2016-06-07T21:05:51.880065305Z"
  2088        UpdatedAt: "2016-06-07T21:07:29.962229872Z"
  2089        Spec:
  2090          Name: "hopeful_cori"
  2091          TaskTemplate:
  2092            ContainerSpec:
  2093              Image: "redis"
  2094            Resources:
  2095              Limits: {}
  2096              Reservations: {}
  2097            RestartPolicy:
  2098              Condition: "any"
  2099              MaxAttempts: 0
  2100            Placement: {}
  2101          Mode:
  2102            Replicated:
  2103              Replicas: 1
  2104          UpdateConfig:
  2105            Parallelism: 1
  2106            FailureAction: "pause"
  2107          EndpointSpec:
  2108            Mode: "vip"
  2109            Ports:
  2110              -
  2111                Protocol: "tcp"
  2112                TargetPort: 6379
  2113                PublishedPort: 30001
  2114        Endpoint:
  2115          Spec:
  2116            Mode: "vip"
  2117            Ports:
  2118              -
  2119                Protocol: "tcp"
  2120                TargetPort: 6379
  2121                PublishedPort: 30001
  2122          Ports:
  2123            -
  2124              Protocol: "tcp"
  2125              TargetPort: 6379
  2126              PublishedPort: 30001
  2127          VirtualIPs:
  2128            -
  2129              NetworkID: "4qvuz4ko70xaltuqbt8956gd1"
  2130              Addr: "10.255.0.2/16"
  2131            -
  2132              NetworkID: "4qvuz4ko70xaltuqbt8956gd1"
  2133              Addr: "10.255.0.3/16"
  2134  paths:
  2135    /containers/json:
  2136      get:
  2137        summary: "List containers"
  2138        operationId: "GetContainerList"
  2139        produces:
  2140          - "application/json"
  2141        parameters:
  2142          - name: "all"
  2143            in: "query"
  2144            description: "Return all containers. By default, only running containers are shown"
  2145            type: "boolean"
  2146            default: false
  2147          - name: "limit"
  2148            in: "query"
  2149            description: "Return this number of most recently created containers, including non-running ones."
  2150            type: "integer"
  2151          - name: "size"
  2152            in: "query"
  2153            description: "Return the size of container as fields `SizeRw` and `SizeRootFs`."
  2154            type: "boolean"
  2155            default: false
  2156          - name: "filters"
  2157            in: "query"
  2158            description: |
  2159              Filters to process on the container list, encoded as JSON (a `map[string][]string`). For example, `{"status": ["paused"]}` will only return paused containers.
  2160  
  2161              Available filters:
  2162              - `exited=<int>` containers with exit code of `<int>`
  2163              - `status=`(`created`|`restarting`|`running`|`paused`|`exited`|`dead`)
  2164              - `label=key` or `label="key=value"` of a container label
  2165              - `isolation=`(`default`|`process`|`hyperv`) (Windows daemon only)
  2166              - `ancestor`=(`<image-name>[:<tag>]`, `<image id>`, or `<image@digest>`)
  2167              - `before`=(`<container id>` or `<container name>`)
  2168              - `since`=(`<container id>` or `<container name>`)
  2169              - `volume`=(`<volume name>` or `<mount point destination>`)
  2170              - `network`=(`<network id>` or `<network name>`)
  2171            type: "string"
  2172        responses:
  2173          200:
  2174            description: "no error"
  2175            schema:
  2176              type: "array"
  2177              items:
  2178                type: "object"
  2179                properties:
  2180                  Id:
  2181                    description: "The ID of this container"
  2182                    type: "string"
  2183                    x-go-name: "ID"
  2184                  Names:
  2185                    description: "The names that this container has been given"
  2186                    type: "array"
  2187                    items:
  2188                      type: "string"
  2189                  Image:
  2190                    description: "The name of the image used when creating this container"
  2191                    type: "string"
  2192                  ImageID:
  2193                    description: "The ID of the image that this container was created from"
  2194                    type: "string"
  2195                  Command:
  2196                    description: "Command to run when starting the container"
  2197                    type: "string"
  2198                  Created:
  2199                    description: "When the container was created"
  2200                    type: "integer"
  2201                    format: "int64"
  2202                  Ports:
  2203                    description: "The ports exposed by this container"
  2204                    type: "array"
  2205                    items:
  2206                      $ref: "#/definitions/Port"
  2207                  SizeRw:
  2208                    description: "The size of files that have been created or changed by this container"
  2209                    type: "integer"
  2210                    format: "int64"
  2211                  SizeRootFs:
  2212                    description: "The total size of all the files in this container"
  2213                    type: "integer"
  2214                    format: "int64"
  2215                  Labels:
  2216                    description: "Labels that have been applied to this container"
  2217                    type: "object"
  2218                    additionalProperties:
  2219                      type: "string"
  2220                  State:
  2221                    description: "The state of this container (e.g. `Exited`)"
  2222                    type: "string"
  2223                  Status:
  2224                    description: "Additional human-readable status of this container (e.g. `Exit 0`)"
  2225                    type: "string"
  2226                  HostConfig:
  2227                    type: "object"
  2228                    properties:
  2229                      NetworkMode:
  2230                        type: "string"
  2231                  NetworkSettings:
  2232                    description: "A summary of the container's network settings"
  2233                    type: "object"
  2234                    properties:
  2235                      Networks:
  2236                        type: "object"
  2237                        additionalProperties:
  2238                          $ref: "#/definitions/EndpointSettings"
  2239                  Mounts:
  2240                    type: "array"
  2241                    items:
  2242                      $ref: "#/definitions/Mount"
  2243            examples:
  2244              application/json:
  2245                - Id: "8dfafdbc3a40"
  2246                  Names:
  2247                    - "/boring_feynman"
  2248                  Image: "ubuntu:latest"
  2249                  ImageID: "d74508fb6632491cea586a1fd7d748dfc5274cd6fdfedee309ecdcbc2bf5cb82"
  2250                  Command: "echo 1"
  2251                  Created: 1367854155
  2252                  State: "Exited"
  2253                  Status: "Exit 0"
  2254                  Ports:
  2255                    - PrivatePort: 2222
  2256                      PublicPort: 3333
  2257                      Type: "tcp"
  2258                  Labels:
  2259                    com.example.vendor: "Acme"
  2260                    com.example.license: "GPL"
  2261                    com.example.version: "1.0"
  2262                  SizeRw: 12288
  2263                  SizeRootFs: 0
  2264                  HostConfig:
  2265                    NetworkMode: "default"
  2266                  NetworkSettings:
  2267                    Networks:
  2268                      bridge:
  2269                        IPAMConfig: null
  2270                        Links: null
  2271                        Aliases: null
  2272                        NetworkID: "7ea29fc1412292a2d7bba362f9253545fecdfa8ce9a6e37dd10ba8bee7129812"
  2273                        EndpointID: "2cdc4edb1ded3631c81f57966563e5c8525b81121bb3706a9a9a3ae102711f3f"
  2274                        Gateway: "172.17.0.1"
  2275                        IPAddress: "172.17.0.2"
  2276                        IPPrefixLen: 16
  2277                        IPv6Gateway: ""
  2278                        GlobalIPv6Address: ""
  2279                        GlobalIPv6PrefixLen: 0
  2280                        MacAddress: "02:42:ac:11:00:02"
  2281                  Mounts:
  2282                    - Name: "fac362...80535"
  2283                      Source: "/data"
  2284                      Destination: "/data"
  2285                      Driver: "local"
  2286                      Mode: "ro,Z"
  2287                      RW: false
  2288                      Propagation: ""
  2289                - Id: "9cd87474be90"
  2290                  Names:
  2291                    - "/coolName"
  2292                  Image: "ubuntu:latest"
  2293                  ImageID: "d74508fb6632491cea586a1fd7d748dfc5274cd6fdfedee309ecdcbc2bf5cb82"
  2294                  Command: "echo 222222"
  2295                  Created: 1367854155
  2296                  State: "Exited"
  2297                  Status: "Exit 0"
  2298                  Ports: []
  2299                  Labels: {}
  2300                  SizeRw: 12288
  2301                  SizeRootFs: 0
  2302                  HostConfig:
  2303                    NetworkMode: "default"
  2304                  NetworkSettings:
  2305                    Networks:
  2306                      bridge:
  2307                        IPAMConfig: null
  2308                        Links: null
  2309                        Aliases: null
  2310                        NetworkID: "7ea29fc1412292a2d7bba362f9253545fecdfa8ce9a6e37dd10ba8bee7129812"
  2311                        EndpointID: "88eaed7b37b38c2a3f0c4bc796494fdf51b270c2d22656412a2ca5d559a64d7a"
  2312                        Gateway: "172.17.0.1"
  2313                        IPAddress: "172.17.0.8"
  2314                        IPPrefixLen: 16
  2315                        IPv6Gateway: ""
  2316                        GlobalIPv6Address: ""
  2317                        GlobalIPv6PrefixLen: 0
  2318                        MacAddress: "02:42:ac:11:00:08"
  2319                  Mounts: []
  2320                - Id: "3176a2479c92"
  2321                  Names:
  2322                    - "/sleepy_dog"
  2323                  Image: "ubuntu:latest"
  2324                  ImageID: "d74508fb6632491cea586a1fd7d748dfc5274cd6fdfedee309ecdcbc2bf5cb82"
  2325                  Command: "echo 3333333333333333"
  2326                  Created: 1367854154
  2327                  State: "Exited"
  2328                  Status: "Exit 0"
  2329                  Ports: []
  2330                  Labels: {}
  2331                  SizeRw: 12288
  2332                  SizeRootFs: 0
  2333                  HostConfig:
  2334                    NetworkMode: "default"
  2335                  NetworkSettings:
  2336                    Networks:
  2337                      bridge:
  2338                        IPAMConfig: null
  2339                        Links: null
  2340                        Aliases: null
  2341                        NetworkID: "7ea29fc1412292a2d7bba362f9253545fecdfa8ce9a6e37dd10ba8bee7129812"
  2342                        EndpointID: "8b27c041c30326d59cd6e6f510d4f8d1d570a228466f956edf7815508f78e30d"
  2343                        Gateway: "172.17.0.1"
  2344                        IPAddress: "172.17.0.6"
  2345                        IPPrefixLen: 16
  2346                        IPv6Gateway: ""
  2347                        GlobalIPv6Address: ""
  2348                        GlobalIPv6PrefixLen: 0
  2349                        MacAddress: "02:42:ac:11:00:06"
  2350                  Mounts: []
  2351                - Id: "4cb07b47f9fb"
  2352                  Names:
  2353                    - "/running_cat"
  2354                  Image: "ubuntu:latest"
  2355                  ImageID: "d74508fb6632491cea586a1fd7d748dfc5274cd6fdfedee309ecdcbc2bf5cb82"
  2356                  Command: "echo 444444444444444444444444444444444"
  2357                  Created: 1367854152
  2358                  State: "Exited"
  2359                  Status: "Exit 0"
  2360                  Ports: []
  2361                  Labels: {}
  2362                  SizeRw: 12288
  2363                  SizeRootFs: 0
  2364                  HostConfig:
  2365                    NetworkMode: "default"
  2366                  NetworkSettings:
  2367                    Networks:
  2368                      bridge:
  2369                        IPAMConfig: null
  2370                        Links: null
  2371                        Aliases: null
  2372                        NetworkID: "7ea29fc1412292a2d7bba362f9253545fecdfa8ce9a6e37dd10ba8bee7129812"
  2373                        EndpointID: "d91c7b2f0644403d7ef3095985ea0e2370325cd2332ff3a3225c4247328e66e9"
  2374                        Gateway: "172.17.0.1"
  2375                        IPAddress: "172.17.0.5"
  2376                        IPPrefixLen: 16
  2377                        IPv6Gateway: ""
  2378                        GlobalIPv6Address: ""
  2379                        GlobalIPv6PrefixLen: 0
  2380                        MacAddress: "02:42:ac:11:00:05"
  2381                  Mounts: []
  2382          400:
  2383            description: "bad parameter"
  2384            schema:
  2385              $ref: "#/definitions/Error"
  2386          500:
  2387            description: "server error"
  2388            schema:
  2389              $ref: "#/definitions/Error"
  2390        tags:
  2391          - "Container"
  2392    /containers/create:
  2393      post:
  2394        summary: "Create a container"
  2395        operationId: "PostContainerCreate"
  2396        consumes:
  2397          - "application/json"
  2398          - "application/octet-stream"
  2399        produces:
  2400          - "application/json"
  2401        parameters:
  2402          - name: "name"
  2403            in: "query"
  2404            description: "Assign the specified name to the container. Must match `/?[a-zA-Z0-9_-]+`."
  2405            type: "string"
  2406            pattern: "/?[a-zA-Z0-9_-]+"
  2407          - name: "body"
  2408            in: "body"
  2409            description: "Container to create"
  2410            schema:
  2411              allOf:
  2412                - $ref: "#/definitions/Config"
  2413                - type: "object"
  2414                  properties:
  2415                    HostConfig:
  2416                      $ref: "#/definitions/HostConfig"
  2417                    NetworkingConfig:
  2418                      description: "This container's networking configuration."
  2419                      type: "object"
  2420                      properties:
  2421                        EndpointsConfig:
  2422                          description: "A mapping of network name to endpoint configuration for that network."
  2423                          type: "object"
  2424                          additionalProperties:
  2425                            $ref: "#/definitions/EndpointSettings"
  2426              example:
  2427                Hostname: ""
  2428                Domainname: ""
  2429                User: ""
  2430                AttachStdin: false
  2431                AttachStdout: true
  2432                AttachStderr: true
  2433                Tty: false
  2434                OpenStdin: false
  2435                StdinOnce: false
  2436                Env:
  2437                  - "FOO=bar"
  2438                  - "BAZ=quux"
  2439                Cmd:
  2440                  - "date"
  2441                Entrypoint: ""
  2442                Image: "ubuntu"
  2443                Labels:
  2444                  com.example.vendor: "Acme"
  2445                  com.example.license: "GPL"
  2446                  com.example.version: "1.0"
  2447                Volumes:
  2448                  /volumes/data: {}
  2449                WorkingDir: ""
  2450                NetworkDisabled: false
  2451                MacAddress: "12:34:56:78:9a:bc"
  2452                ExposedPorts:
  2453                  22/tcp: {}
  2454                StopSignal: "SIGTERM"
  2455                HostConfig:
  2456                  Binds:
  2457                    - "/tmp:/tmp"
  2458                  Links:
  2459                    - "redis3:redis"
  2460                  Memory: 0
  2461                  MemorySwap: 0
  2462                  MemoryReservation: 0
  2463                  KernelMemory: 0
  2464                  CpuPercent: 80
  2465                  CpuShares: 512
  2466                  CpuPeriod: 100000
  2467                  CpuQuota: 50000
  2468                  CpusetCpus: "0,1"
  2469                  CpusetMems: "0,1"
  2470                  MaximumIOps: 0
  2471                  MaximumIOBps: 0
  2472                  BlkioWeight: 300
  2473                  BlkioWeightDevice:
  2474                    - {}
  2475                  BlkioDeviceReadBps:
  2476                    - {}
  2477                  BlkioDeviceReadIOps:
  2478                    - {}
  2479                  BlkioDeviceWriteBps:
  2480                    - {}
  2481                  BlkioDeviceWriteIOps:
  2482                    - {}
  2483                  MemorySwappiness: 60
  2484                  OomKillDisable: false
  2485                  OomScoreAdj: 500
  2486                  PidMode: ""
  2487                  PidsLimit: -1
  2488                  PortBindings:
  2489                    22/tcp:
  2490                      - HostPort: "11022"
  2491                  PublishAllPorts: false
  2492                  Privileged: false
  2493                  ReadonlyRootfs: false
  2494                  Dns:
  2495                    - "8.8.8.8"
  2496                  DnsOptions:
  2497                    - ""
  2498                  DnsSearch:
  2499                    - ""
  2500                  VolumesFrom:
  2501                    - "parent"
  2502                    - "other:ro"
  2503                  CapAdd:
  2504                    - "NET_ADMIN"
  2505                  CapDrop:
  2506                    - "MKNOD"
  2507                  GroupAdd:
  2508                    - "newgroup"
  2509                  RestartPolicy:
  2510                    Name: ""
  2511                    MaximumRetryCount: 0
  2512                  AutoRemove: true
  2513                  NetworkMode: "bridge"
  2514                  Devices: []
  2515                  Ulimits:
  2516                    - {}
  2517                  LogConfig:
  2518                    Type: "json-file"
  2519                    Config: {}
  2520                  SecurityOpt: []
  2521                  StorageOpt: {}
  2522                  CgroupParent: ""
  2523                  VolumeDriver: ""
  2524                  ShmSize: 67108864
  2525                NetworkingConfig:
  2526                  EndpointsConfig:
  2527                    isolated_nw:
  2528                      IPAMConfig:
  2529                        IPv4Address: "172.20.30.33"
  2530                        IPv6Address: "2001:db8:abcd::3033"
  2531                        LinkLocalIPs:
  2532                          - "169.254.34.68"
  2533                          - "fe80::3468"
  2534                      Links:
  2535                        - "container_1"
  2536                        - "container_2"
  2537                      Aliases:
  2538                        - "server_x"
  2539                        - "server_y"
  2540  
  2541            required: true
  2542        responses:
  2543          201:
  2544            description: "no error"
  2545            schema:
  2546              type: "object"
  2547              properties:
  2548                Id:
  2549                  description: "The ID of the created container"
  2550                  type: "string"
  2551                Warnings:
  2552                  type: "array"
  2553                  items:
  2554                    type: "string"
  2555            examples:
  2556              application/json:
  2557                Id: "e90e34656806"
  2558                Warnings: []
  2559          400:
  2560            description: "bad parameter"
  2561            schema:
  2562              $ref: "#/definitions/Error"
  2563          404:
  2564            description: "no such container"
  2565            schema:
  2566              $ref: "#/definitions/Error"
  2567            examples:
  2568              application/json:
  2569                message: "No such container: c2ada9df5af8"
  2570          406:
  2571            description: "impossible to attach"
  2572            schema:
  2573              $ref: "#/definitions/Error"
  2574          409:
  2575            description: "conflict"
  2576            schema:
  2577              $ref: "#/definitions/Error"
  2578          500:
  2579            description: "server error"
  2580            schema:
  2581              $ref: "#/definitions/Error"
  2582        tags:
  2583          - "Container"
  2584    /containers/{id}/json:
  2585      get:
  2586        summary: "Inspect a container"
  2587        description: "Return low-level information about a container."
  2588        operationId: "GetContainerInspect"
  2589        produces:
  2590          - "application/json"
  2591        responses:
  2592          200:
  2593            description: "no error"
  2594            schema:
  2595              type: "object"
  2596              properties:
  2597                Id:
  2598                  description: "The ID of the container"
  2599                  type: "string"
  2600                Created:
  2601                  description: "The time the container was created"
  2602                  type: "string"
  2603                Path:
  2604                  description: "The path to the command being run"
  2605                  type: "string"
  2606                Args:
  2607                  description: "The arguments to the command being run"
  2608                  type: "array"
  2609                  items:
  2610                    type: "string"
  2611                State:
  2612                  description: "The state of the container."
  2613                  type: "object"
  2614                  properties:
  2615                    Status:
  2616                      description: "The status of the container. For example, `running` or `exited`."
  2617                      type: "string"
  2618                    Running:
  2619                      description: "Whether this container is running."
  2620                      type: "boolean"
  2621                    Paused:
  2622                      description: "Whether this container is paused."
  2623                      type: "boolean"
  2624                    Restarting:
  2625                      description: "Whether this container is restarting."
  2626                      type: "boolean"
  2627                    OOMKilled:
  2628                      description: "Whether this container has been killed because it ran out of memory."
  2629                      type: "boolean"
  2630                    Dead:
  2631                      type: "boolean"
  2632                    Pid:
  2633                      description: "The process ID of this container"
  2634                      type: "integer"
  2635                    ExitCode:
  2636                      description: "The last exit code of this container"
  2637                      type: "integer"
  2638                    Error:
  2639                      type: "string"
  2640                    StartedAt:
  2641                      description: "The time when this container was last started."
  2642                      type: "string"
  2643                    FinishedAt:
  2644                      description: "The time when this container last exited."
  2645                      type: "string"
  2646                Image:
  2647                  description: "The container's image"
  2648                  type: "string"
  2649                ResolvConfPath:
  2650                  type: "string"
  2651                HostnamePath:
  2652                  type: "string"
  2653                HostsPath:
  2654                  type: "string"
  2655                LogPath:
  2656                  type: "string"
  2657                Node:
  2658                  description: "TODO"
  2659                  type: "object"
  2660                Name:
  2661                  type: "string"
  2662                RestartCount:
  2663                  type: "integer"
  2664                Driver:
  2665                  type: "string"
  2666                MountLabel:
  2667                  type: "string"
  2668                ProcessLabel:
  2669                  type: "string"
  2670                AppArmorProfile:
  2671                  type: "string"
  2672                ExecIDs:
  2673                  type: "string"
  2674                HostConfig:
  2675                  $ref: "#/definitions/HostConfig"
  2676                GraphDriver:
  2677                  $ref: "#/definitions/GraphDriver"
  2678                SizeRw:
  2679                  description: "The size of files that have been created or changed by this container."
  2680                  type: "integer"
  2681                  format: "int64"
  2682                SizeRootFs:
  2683                  description: "The total size of all the files in this container."
  2684                  type: "integer"
  2685                  format: "int64"
  2686                Mounts:
  2687                  type: "array"
  2688                  items:
  2689                    $ref: "#/definitions/MountPoint"
  2690                Config:
  2691                  $ref: "#/definitions/Config"
  2692                NetworkSettings:
  2693                  $ref: "#/definitions/NetworkConfig"
  2694            examples:
  2695              application/json:
  2696                AppArmorProfile: ""
  2697                Args:
  2698                  - "-c"
  2699                  - "exit 9"
  2700                Config:
  2701                  AttachStderr: true
  2702                  AttachStdin: false
  2703                  AttachStdout: true
  2704                  Cmd:
  2705                    - "/bin/sh"
  2706                    - "-c"
  2707                    - "exit 9"
  2708                  Domainname: ""
  2709                  Entrypoint: null
  2710                  Env:
  2711                    - "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
  2712                  ExposedPorts: null
  2713                  Hostname: "ba033ac44011"
  2714                  Image: "ubuntu"
  2715                  Labels:
  2716                    com.example.vendor: "Acme"
  2717                    com.example.license: "GPL"
  2718                    com.example.version: "1.0"
  2719                  MacAddress: ""
  2720                  NetworkDisabled: false
  2721                  OnBuild: null
  2722                  OpenStdin: false
  2723                  StdinOnce: false
  2724                  Tty: false
  2725                  User: ""
  2726                  Volumes:
  2727                    /volumes/data: {}
  2728                  WorkingDir: ""
  2729                  StopSignal: "SIGTERM"
  2730                Created: "2015-01-06T15:47:31.485331387Z"
  2731                Driver: "devicemapper"
  2732                ExecIDs: null
  2733                HostConfig:
  2734                  Binds: null
  2735                  MaximumIOps: 0
  2736                  MaximumIOBps: 0
  2737                  BlkioWeight: 0
  2738                  BlkioWeightDevice:
  2739                    - {}
  2740                  BlkioDeviceReadBps:
  2741                    - {}
  2742                  BlkioDeviceWriteBps:
  2743                    - {}
  2744                  BlkioDeviceReadIOps:
  2745                    - {}
  2746                  BlkioDeviceWriteIOps:
  2747                    - {}
  2748                  CapAdd: null
  2749                  CapDrop: null
  2750                  ContainerIDFile: ""
  2751                  CpusetCpus: ""
  2752                  CpusetMems: ""
  2753                  CpuPercent: 80
  2754                  CpuShares: 0
  2755                  CpuPeriod: 100000
  2756                  Devices: []
  2757                  Dns: null
  2758                  DnsOptions: null
  2759                  DnsSearch: null
  2760                  ExtraHosts: null
  2761                  IpcMode: ""
  2762                  Links: null
  2763                  LxcConf: []
  2764                  Memory: 0
  2765                  MemorySwap: 0
  2766                  MemoryReservation: 0
  2767                  KernelMemory: 0
  2768                  OomKillDisable: false
  2769                  OomScoreAdj: 500
  2770                  NetworkMode: "bridge"
  2771                  PidMode: ""
  2772                  PortBindings: {}
  2773                  Privileged: false
  2774                  ReadonlyRootfs: false
  2775                  PublishAllPorts: false
  2776                  RestartPolicy:
  2777                    MaximumRetryCount: 2
  2778                    Name: "on-failure"
  2779                  LogConfig:
  2780                    Config: null
  2781                    Type: "json-file"
  2782                  SecurityOpt: null
  2783                  Sysctls:
  2784                    net.ipv4.ip_forward: "1"
  2785                  StorageOpt: null
  2786                  VolumesFrom: null
  2787                  Ulimits:
  2788                    - {}
  2789                  VolumeDriver: ""
  2790                  ShmSize: 67108864
  2791                HostnamePath: "/var/lib/docker/containers/ba033ac4401106a3b513bc9d639eee123ad78ca3616b921167cd74b20e25ed39/hostname"
  2792                HostsPath: "/var/lib/docker/containers/ba033ac4401106a3b513bc9d639eee123ad78ca3616b921167cd74b20e25ed39/hosts"
  2793                LogPath: "/var/lib/docker/containers/1eb5fabf5a03807136561b3c00adcd2992b535d624d5e18b6cdc6a6844d9767b/1eb5fabf5a03807136561b3c00adcd2992b535d624d5e18b6cdc6a6844d9767b-json.log"
  2794                Id: "ba033ac4401106a3b513bc9d639eee123ad78ca3616b921167cd74b20e25ed39"
  2795                Image: "04c5d3b7b0656168630d3ba35d8889bd0e9caafcaeb3004d2bfbc47e7c5d35d2"
  2796                MountLabel: ""
  2797                Name: "/boring_euclid"
  2798                NetworkSettings:
  2799                  Bridge: ""
  2800                  SandboxID: ""
  2801                  HairpinMode: false
  2802                  LinkLocalIPv6Address: ""
  2803                  LinkLocalIPv6PrefixLen: 0
  2804                  Ports: null
  2805                  SandboxKey: ""
  2806                  SecondaryIPAddresses: null
  2807                  SecondaryIPv6Addresses: null
  2808                  EndpointID: ""
  2809                  Gateway: ""
  2810                  GlobalIPv6Address: ""
  2811                  GlobalIPv6PrefixLen: 0
  2812                  IPAddress: ""
  2813                  IPPrefixLen: 0
  2814                  IPv6Gateway: ""
  2815                  MacAddress: ""
  2816                  Networks:
  2817                    bridge:
  2818                      NetworkID: "7ea29fc1412292a2d7bba362f9253545fecdfa8ce9a6e37dd10ba8bee7129812"
  2819                      EndpointID: "7587b82f0dada3656fda26588aee72630c6fab1536d36e394b2bfbcf898c971d"
  2820                      Gateway: "172.17.0.1"
  2821                      IPAddress: "172.17.0.2"
  2822                      IPPrefixLen: 16
  2823                      IPv6Gateway: ""
  2824                      GlobalIPv6Address: ""
  2825                      GlobalIPv6PrefixLen: 0
  2826                      MacAddress: "02:42:ac:12:00:02"
  2827                Path: "/bin/sh"
  2828                ProcessLabel: ""
  2829                ResolvConfPath: "/var/lib/docker/containers/ba033ac4401106a3b513bc9d639eee123ad78ca3616b921167cd74b20e25ed39/resolv.conf"
  2830                RestartCount: 1
  2831                State:
  2832                  Error: ""
  2833                  ExitCode: 9
  2834                  FinishedAt: "2015-01-06T15:47:32.080254511Z"
  2835                  OOMKilled: false
  2836                  Dead: false
  2837                  Paused: false
  2838                  Pid: 0
  2839                  Restarting: false
  2840                  Running: true
  2841                  StartedAt: "2015-01-06T15:47:32.072697474Z"
  2842                  Status: "running"
  2843                Mounts:
  2844                  - Name: "fac362...80535"
  2845                    Source: "/data"
  2846                    Destination: "/data"
  2847                    Driver: "local"
  2848                    Mode: "ro,Z"
  2849                    RW: false
  2850                    Propagation: ""
  2851          404:
  2852            description: "no such container"
  2853            schema:
  2854              $ref: "#/definitions/Error"
  2855            examples:
  2856              application/json:
  2857                message: "No such container: c2ada9df5af8"
  2858          500:
  2859            description: "server error"
  2860            schema:
  2861              $ref: "#/definitions/Error"
  2862        parameters:
  2863          - name: "id"
  2864            in: "path"
  2865            required: true
  2866            description: "ID or name of the container"
  2867            type: "string"
  2868          - name: "size"
  2869            in: "query"
  2870            type: "boolean"
  2871            default: false
  2872            description: "Return the size of container as fields `SizeRw` and `SizeRootFs`"
  2873        tags:
  2874          - "Container"
  2875    /containers/{id}/top:
  2876      get:
  2877        summary: "List processes running inside a container"
  2878        description: "On Unix systems, this is done by running the `ps` command. This endpoint is not supported on Windows."
  2879        operationId: "GetContainerTop"
  2880        responses:
  2881          200:
  2882            description: "no error"
  2883            schema:
  2884              type: "object"
  2885              properties:
  2886                Titles:
  2887                  description: "The ps column titles"
  2888                  type: "array"
  2889                  items:
  2890                    type: "string"
  2891                Processes:
  2892                  description: "Each process running in the container, where each is process is an array of values corresponding to the titles"
  2893                  type: "array"
  2894                  items:
  2895                    type: "array"
  2896                    items:
  2897                      type: "string"
  2898            examples:
  2899              application/json:
  2900                Titles:
  2901                  - "UID"
  2902                  - "PID"
  2903                  - "PPID"
  2904                  - "C"
  2905                  - "STIME"
  2906                  - "TTY"
  2907                  - "TIME"
  2908                  - "CMD"
  2909                Processes:
  2910                  -
  2911                    - "root"
  2912                    - "13642"
  2913                    - "882"
  2914                    - "0"
  2915                    - "17:03"
  2916                    - "pts/0"
  2917                    - "00:00:00"
  2918                    - "/bin/bash"
  2919                  -
  2920                    - "root"
  2921                    - "13735"
  2922                    - "13642"
  2923                    - "0"
  2924                    - "17:06"
  2925                    - "pts/0"
  2926                    - "00:00:00"
  2927                    - "sleep 10"
  2928          404:
  2929            description: "no such container"
  2930            schema:
  2931              $ref: "#/definitions/Error"
  2932            examples:
  2933              application/json:
  2934                message: "No such container: c2ada9df5af8"
  2935          500:
  2936            description: "server error"
  2937            schema:
  2938              $ref: "#/definitions/Error"
  2939        parameters:
  2940          - name: "id"
  2941            in: "path"
  2942            required: true
  2943            description: "ID or name of the container"
  2944            type: "string"
  2945          - name: "ps_args"
  2946            in: "query"
  2947            description: "The arguments to pass to `ps`. For example, `aux`"
  2948            type: "string"
  2949            default: "-ef"
  2950        tags:
  2951          - "Container"
  2952    /containers/{id}/logs:
  2953      get:
  2954        summary: "Get container logs"
  2955        description: |
  2956          Get stdout and stderr logs from a container.
  2957  
  2958          Note: This endpoint works only for containers with the `json-file` or `journald` logging driver.
  2959        operationId: "GetContainerLogs"
  2960        responses:
  2961          101:
  2962            description: "logs returned as a stream"
  2963            schema:
  2964              type: "string"
  2965              format: "binary"
  2966          200:
  2967            description: "logs returned as a string in response body"
  2968            schema:
  2969              type: "string"
  2970          404:
  2971            description: "no such container"
  2972            schema:
  2973              $ref: "#/definitions/Error"
  2974            examples:
  2975              application/json:
  2976                message: "No such container: c2ada9df5af8"
  2977          500:
  2978            description: "server error"
  2979            schema:
  2980              $ref: "#/definitions/Error"
  2981        parameters:
  2982          - name: "id"
  2983            in: "path"
  2984            required: true
  2985            description: "ID or name of the container"
  2986            type: "string"
  2987          - name: "follow"
  2988            in: "query"
  2989            description: |
  2990              Return the logs as a stream.
  2991  
  2992              This will return a `101` HTTP response with a `Connection: upgrade` header, then hijack the HTTP connection to send raw output. For more information about hijacking and the stream format, [see the documentation for the attach endpoint](#operation/PostContainerAttach).
  2993            type: "boolean"
  2994            default: false
  2995          - name: "stdout"
  2996            in: "query"
  2997            description: "Return logs from stdout"
  2998            type: "boolean"
  2999            default: false
  3000          - name: "stderr"
  3001            in: "query"
  3002            description: "Return logs from stderr"
  3003            type: "boolean"
  3004            default: false
  3005          - name: "since"
  3006            in: "query"
  3007            description: "Only return logs since this time, as a UNIX timestamp"
  3008            type: "integer"
  3009            default: 0
  3010          - name: "timestamps"
  3011            in: "query"
  3012            description: "Add timestamps to every log line"
  3013            type: "boolean"
  3014            default: false
  3015          - name: "tail"
  3016            in: "query"
  3017            description: "Only return this number of log lines from the end of the logs. Specify as an integer or `all` to output all log lines."
  3018            type: "string"
  3019            default: "all"
  3020        tags:
  3021          - "Container"
  3022    /containers/{id}/changes:
  3023      get:
  3024        summary: "Get changes on a container’s filesystem"
  3025        description: |
  3026          Returns which files in a container's filesystem have been added, deleted, or modified. The `Kind` of modification can be one of:
  3027  
  3028          - `0`: Modified
  3029          - `1`: Added
  3030          - `2`: Deleted
  3031        operationId: "GetContainerChanges"
  3032        produces:
  3033          - "application/json"
  3034        responses:
  3035          200:
  3036            description: "no error"
  3037            schema:
  3038              type: "array"
  3039              items:
  3040                type: "object"
  3041                properties:
  3042                  Path:
  3043                    description: "Path to file that has changed"
  3044                    type: "string"
  3045                  Kind:
  3046                    description: "Kind of change"
  3047                    type: "integer"
  3048                    enum:
  3049                      - 0
  3050                      - 1
  3051                      - 2
  3052            examples:
  3053              application/json:
  3054                - Path: "/dev"
  3055                  Kind: 0
  3056                - Path: "/dev/kmsg"
  3057                  Kind: 1
  3058                - Path: "/test"
  3059                  Kind: 1
  3060          404:
  3061            description: "no such container"
  3062            schema:
  3063              $ref: "#/definitions/Error"
  3064            examples:
  3065              application/json:
  3066                message: "No such container: c2ada9df5af8"
  3067          500:
  3068            description: "server error"
  3069            schema:
  3070              $ref: "#/definitions/Error"
  3071        parameters:
  3072          - name: "id"
  3073            in: "path"
  3074            required: true
  3075            description: "ID or name of the container"
  3076            type: "string"
  3077        tags:
  3078          - "Container"
  3079    /containers/{id}/export:
  3080      get:
  3081        summary: "Export a container"
  3082        description: "Export the contents of a container as a tarball."
  3083        operationId: "GetContainerExport"
  3084        produces:
  3085          - "application/octet-stream"
  3086        responses:
  3087          200:
  3088            description: "no error"
  3089          404:
  3090            description: "no such container"
  3091            schema:
  3092              $ref: "#/definitions/Error"
  3093            examples:
  3094              application/json:
  3095                message: "No such container: c2ada9df5af8"
  3096          500:
  3097            description: "server error"
  3098            schema:
  3099              $ref: "#/definitions/Error"
  3100        parameters:
  3101          - name: "id"
  3102            in: "path"
  3103            required: true
  3104            description: "ID or name of the container"
  3105            type: "string"
  3106        tags:
  3107          - "Container"
  3108    /containers/{id}/stats:
  3109      get:
  3110        summary: "Get container stats based on resource usage"
  3111        description: |
  3112          This endpoint returns a live stream of a container’s resource usage statistics.
  3113  
  3114          The `precpu_stats` is the CPU statistic of last read, which is used for calculating the CPU usage percentage. It is not the same as the `cpu_stats` field.
  3115        operationId: "GetContainerStats"
  3116        produces:
  3117          - "application/json"
  3118        responses:
  3119          200:
  3120            description: "no error"
  3121            schema:
  3122              type: "object"
  3123            examples:
  3124              application/json:
  3125                read: "2015-01-08T22:57:31.547920715Z"
  3126                pids_stats:
  3127                  current: 3
  3128                networks:
  3129                  eth0:
  3130                    rx_bytes: 5338
  3131                    rx_dropped: 0
  3132                    rx_errors: 0
  3133                    rx_packets: 36
  3134                    tx_bytes: 648
  3135                    tx_dropped: 0
  3136                    tx_errors: 0
  3137                    tx_packets: 8
  3138                  eth5:
  3139                    rx_bytes: 4641
  3140                    rx_dropped: 0
  3141                    rx_errors: 0
  3142                    rx_packets: 26
  3143                    tx_bytes: 690
  3144                    tx_dropped: 0
  3145                    tx_errors: 0
  3146                    tx_packets: 9
  3147                memory_stats:
  3148                  stats:
  3149                    total_pgmajfault: 0
  3150                    cache: 0
  3151                    mapped_file: 0
  3152                    total_inactive_file: 0
  3153                    pgpgout: 414
  3154                    rss: 6537216
  3155                    total_mapped_file: 0
  3156                    writeback: 0
  3157                    unevictable: 0
  3158                    pgpgin: 477
  3159                    total_unevictable: 0
  3160                    pgmajfault: 0
  3161                    total_rss: 6537216
  3162                    total_rss_huge: 6291456
  3163                    total_writeback: 0
  3164                    total_inactive_anon: 0
  3165                    rss_huge: 6291456
  3166                    hierarchical_memory_limit: 67108864
  3167                    total_pgfault: 964
  3168                    total_active_file: 0
  3169                    active_anon: 6537216
  3170                    total_active_anon: 6537216
  3171                    total_pgpgout: 414
  3172                    total_cache: 0
  3173                    inactive_anon: 0
  3174                    active_file: 0
  3175                    pgfault: 964
  3176                    inactive_file: 0
  3177                    total_pgpgin: 477
  3178                  max_usage: 6651904
  3179                  usage: 6537216
  3180                  failcnt: 0
  3181                  limit: 67108864
  3182                blkio_stats: {}
  3183                cpu_stats:
  3184                  cpu_usage:
  3185                    percpu_usage:
  3186                      - 8646879
  3187                      - 24472255
  3188                      - 36438778
  3189                      - 30657443
  3190                    usage_in_usermode: 50000000
  3191                    total_usage: 100215355
  3192                    usage_in_kernelmode: 30000000
  3193                  system_cpu_usage: 739306590000000
  3194                  throttling_data:
  3195                    periods: 0
  3196                    throttled_periods: 0
  3197                    throttled_time: 0
  3198                precpu_stats:
  3199                  cpu_usage:
  3200                    percpu_usage:
  3201                      - 8646879
  3202                      - 24350896
  3203                      - 36438778
  3204                      - 30657443
  3205                    usage_in_usermode: 50000000
  3206                    total_usage: 100093996
  3207                    usage_in_kernelmode: 30000000
  3208                  system_cpu_usage: 9492140000000
  3209                  throttling_data:
  3210                    periods: 0
  3211                    throttled_periods: 0
  3212                    throttled_time: 0
  3213          404:
  3214            description: "no such container"
  3215            schema:
  3216              $ref: "#/definitions/Error"
  3217            examples:
  3218              application/json:
  3219                message: "No such container: c2ada9df5af8"
  3220          500:
  3221            description: "server error"
  3222            schema:
  3223              $ref: "#/definitions/Error"
  3224        parameters:
  3225          - name: "id"
  3226            in: "path"
  3227            required: true
  3228            description: "ID or name of the container"
  3229            type: "string"
  3230          - name: "stream"
  3231            in: "query"
  3232            description: "Stream the output. If false, the stats will be output once and then it will disconnect."
  3233            type: "boolean"
  3234            default: true
  3235        tags:
  3236          - "Container"
  3237    /containers/{id}/resize:
  3238      post:
  3239        summary: "Resize a container TTY"
  3240        description: "Resize the TTY for a container. You must restart the container for the resize to take effect."
  3241        operationId: "PostContainerResize"
  3242        consumes:
  3243          - "application/octet-stream"
  3244        produces:
  3245          - "text/plain"
  3246        responses:
  3247          200:
  3248            description: "no error"
  3249          404:
  3250            description: "no such container"
  3251            schema:
  3252              $ref: "#/definitions/Error"
  3253            examples:
  3254              application/json:
  3255                message: "No such container: c2ada9df5af8"
  3256          500:
  3257            description: "cannot resize container"
  3258            schema:
  3259              $ref: "#/definitions/Error"
  3260        parameters:
  3261          - name: "id"
  3262            in: "path"
  3263            required: true
  3264            description: "ID or name of the container"
  3265            type: "string"
  3266          - name: "h"
  3267            in: "query"
  3268            description: "Height of the tty session in characters"
  3269            type: "integer"
  3270          - name: "w"
  3271            in: "query"
  3272            description: "Width of the tty session in characters"
  3273            type: "integer"
  3274        tags:
  3275          - "Container"
  3276    /containers/{id}/start:
  3277      post:
  3278        summary: "Start a container"
  3279        operationId: "PostContainerStart"
  3280        responses:
  3281          204:
  3282            description: "no error"
  3283          304:
  3284            description: "container already started"
  3285            schema:
  3286              $ref: "#/definitions/Error"
  3287          404:
  3288            description: "no such container"
  3289            schema:
  3290              $ref: "#/definitions/Error"
  3291            examples:
  3292              application/json:
  3293                message: "No such container: c2ada9df5af8"
  3294          500:
  3295            description: "server error"
  3296            schema:
  3297              $ref: "#/definitions/Error"
  3298        parameters:
  3299          - name: "id"
  3300            in: "path"
  3301            required: true
  3302            description: "ID or name of the container"
  3303            type: "string"
  3304          - name: "detachKeys"
  3305            in: "query"
  3306            description: "Override the key sequence for detaching a container. Format is a single character `[a-Z]` or `ctrl-<value>` where `<value>` is one of: `a-z`, `@`, `^`, `[`, `,` or `_`."
  3307            type: "string"
  3308        tags:
  3309          - "Container"
  3310    /containers/{id}/stop:
  3311      post:
  3312        summary: "Stop a container"
  3313        operationId: "PostContainerStop"
  3314        responses:
  3315          204:
  3316            description: "no error"
  3317          304:
  3318            description: "container already stopped"
  3319            schema:
  3320              $ref: "#/definitions/Error"
  3321          404:
  3322            description: "no such container"
  3323            schema:
  3324              $ref: "#/definitions/Error"
  3325            examples:
  3326              application/json:
  3327                message: "No such container: c2ada9df5af8"
  3328          500:
  3329            description: "server error"
  3330            schema:
  3331              $ref: "#/definitions/Error"
  3332        parameters:
  3333          - name: "id"
  3334            in: "path"
  3335            required: true
  3336            description: "ID or name of the container"
  3337            type: "string"
  3338          - name: "t"
  3339            in: "query"
  3340            description: "Number of seconds to wait before killing the container"
  3341            type: "integer"
  3342        tags:
  3343          - "Container"
  3344    /containers/{id}/restart:
  3345      post:
  3346        summary: "Restart a container"
  3347        operationId: "PostContainerRestart"
  3348        responses:
  3349          204:
  3350            description: "no error"
  3351          404:
  3352            description: "no such container"
  3353            schema:
  3354              $ref: "#/definitions/Error"
  3355            examples:
  3356              application/json:
  3357                message: "No such container: c2ada9df5af8"
  3358          500:
  3359            description: "server error"
  3360            schema:
  3361              $ref: "#/definitions/Error"
  3362        parameters:
  3363          - name: "id"
  3364            in: "path"
  3365            required: true
  3366            description: "ID or name of the container"
  3367            type: "string"
  3368          - name: "t"
  3369            in: "query"
  3370            description: "Number of seconds to wait before killing the container"
  3371            type: "integer"
  3372        tags:
  3373          - "Container"
  3374    /containers/{id}/kill:
  3375      post:
  3376        summary: "Kill a container"
  3377        description: "Send a POSIX signal to a container, defaulting to killing to the container."
  3378        operationId: "PostContainerKill"
  3379        responses:
  3380          204:
  3381            description: "no error"
  3382          404:
  3383            description: "no such container"
  3384            schema:
  3385              $ref: "#/definitions/Error"
  3386            examples:
  3387              application/json:
  3388                message: "No such container: c2ada9df5af8"
  3389          500:
  3390            description: "server error"
  3391            schema:
  3392              $ref: "#/definitions/Error"
  3393        parameters:
  3394          - name: "id"
  3395            in: "path"
  3396            required: true
  3397            description: "ID or name of the container"
  3398            type: "string"
  3399          - name: "signal"
  3400            in: "query"
  3401            description: "Signal to send to the container as an integer or string (e.g. `SIGINT`)"
  3402            type: "string"
  3403            default: "SIGKILL"
  3404        tags:
  3405          - "Container"
  3406    /containers/{id}/update:
  3407      post:
  3408        summary: "Update a container"
  3409        description: "Change various configuration options of a container without having to recreate it."
  3410        operationId: "PostContainerUpdate"
  3411        consumes:
  3412          - "application/json"
  3413        produces:
  3414          - "application/json"
  3415        responses:
  3416          200:
  3417            description: "no error"
  3418            schema:
  3419              type: "object"
  3420              properties:
  3421                Warnings:
  3422                  type: "array"
  3423                  items:
  3424                    type: "string"
  3425          404:
  3426            description: "no such container"
  3427            schema:
  3428              $ref: "#/definitions/Error"
  3429            examples:
  3430              application/json:
  3431                message: "No such container: c2ada9df5af8"
  3432          500:
  3433            description: "server error"
  3434            schema:
  3435              $ref: "#/definitions/Error"
  3436        parameters:
  3437          - name: "id"
  3438            in: "path"
  3439            required: true
  3440            description: "ID or name of the container"
  3441            type: "string"
  3442          - name: "update"
  3443            in: "body"
  3444            required: true
  3445            schema:
  3446              allOf:
  3447                - $ref: "#/definitions/Resources"
  3448                - type: "object"
  3449                  properties:
  3450                    RestartPolicy:
  3451                      $ref: "#/definitions/RestartPolicy"
  3452              example:
  3453                BlkioWeight: 300
  3454                CpuShares: 512
  3455                CpuPeriod: 100000
  3456                CpuQuota: 50000
  3457                CpusetCpus: "0,1"
  3458                CpusetMems: "0"
  3459                Memory: 314572800
  3460                MemorySwap: 514288000
  3461                MemoryReservation: 209715200
  3462                KernelMemory: 52428800
  3463                RestartPolicy:
  3464                  MaximumRetryCount: 4
  3465                  Name: "on-failure"
  3466        tags:
  3467          - "Container"
  3468    /containers/{id}/rename:
  3469      post:
  3470        summary: "Rename a container"
  3471        operationId: "PostContainerRename"
  3472        responses:
  3473          204:
  3474            description: "no error"
  3475          404:
  3476            description: "no such container"
  3477            schema:
  3478              $ref: "#/definitions/Error"
  3479            examples:
  3480              application/json:
  3481                message: "No such container: c2ada9df5af8"
  3482          409:
  3483            description: "name already in use"
  3484            schema:
  3485              $ref: "#/definitions/Error"
  3486          500:
  3487            description: "server error"
  3488            schema:
  3489              $ref: "#/definitions/Error"
  3490        parameters:
  3491          - name: "id"
  3492            in: "path"
  3493            required: true
  3494            description: "ID or name of the container"
  3495            type: "string"
  3496          - name: "name"
  3497            in: "query"
  3498            required: true
  3499            description: "New name for the container"
  3500            type: "string"
  3501        tags:
  3502          - "Container"
  3503    /containers/{id}/pause:
  3504      post:
  3505        summary: "Pause a container"
  3506        description: |
  3507          Use the cgroups freezer to suspend all processes in a container.
  3508  
  3509          Traditionally, when suspending a process the `SIGSTOP` signal is used, which is observable by the process being suspended. With the cgroups freezer the process is unaware, and unable to capture, that it is being suspended, and subsequently resumed.
  3510        operationId: "PostContainerPause"
  3511        responses:
  3512          204:
  3513            description: "no error"
  3514          404:
  3515            description: "no such container"
  3516            schema:
  3517              $ref: "#/definitions/Error"
  3518            examples:
  3519              application/json:
  3520                message: "No such container: c2ada9df5af8"
  3521          500:
  3522            description: "server error"
  3523            schema:
  3524              $ref: "#/definitions/Error"
  3525        parameters:
  3526          - name: "id"
  3527            in: "path"
  3528            required: true
  3529            description: "ID or name of the container"
  3530            type: "string"
  3531        tags:
  3532          - "Container"
  3533    /containers/{id}/unpause:
  3534      post:
  3535        summary: "Unpause a container"
  3536        description: "Resume a container which has been paused."
  3537        operationId: "PostContainerUnpause"
  3538        responses:
  3539          204:
  3540            description: "no error"
  3541          404:
  3542            description: "no such container"
  3543            schema:
  3544              $ref: "#/definitions/Error"
  3545            examples:
  3546              application/json:
  3547                message: "No such container: c2ada9df5af8"
  3548          500:
  3549            description: "server error"
  3550            schema:
  3551              $ref: "#/definitions/Error"
  3552        parameters:
  3553          - name: "id"
  3554            in: "path"
  3555            required: true
  3556            description: "ID or name of the container"
  3557            type: "string"
  3558        tags:
  3559          - "Container"
  3560    /containers/{id}/attach:
  3561      post:
  3562        summary: "Attach to a container"
  3563        description: |
  3564          Attach to a container to read its output or send it input. You can attach to the same container multiple times and you can reattach to containers that have been detached.
  3565  
  3566          Either the `stream` or `logs` parameter must be `true` for this endpoint to do anything.
  3567  
  3568          See [the documentation for the `docker attach` command](https://docs.docker.com/engine/reference/commandline/attach/) for more details.
  3569  
  3570          ### Hijacking
  3571  
  3572          This endpoint hijacks the HTTP connection to transport `stdin`, `stdout`, and `stderr` on the same socket.
  3573  
  3574          This is the response from the daemon for an attach request:
  3575  
  3576          ```
  3577          HTTP/1.1 200 OK
  3578          Content-Type: application/vnd.docker.raw-stream
  3579  
  3580          [STREAM]
  3581          ```
  3582  
  3583          After the headers and two new lines, the TCP connection can now be used for raw, bidirectional communication between the client and server.
  3584  
  3585          To hint potential proxies about connection hijacking, the Docker client can also optionally send connection upgrade headers.
  3586  
  3587          For example, the client sends this request to upgrade the connection:
  3588  
  3589          ```
  3590          POST /containers/16253994b7c4/attach?stream=1&stdout=1 HTTP/1.1
  3591          Upgrade: tcp
  3592          Connection: Upgrade
  3593          ```
  3594  
  3595          The Docker daemon will respond with a `101 UPGRADED` response, and will similarly follow with the raw stream:
  3596  
  3597          ```
  3598          HTTP/1.1 101 UPGRADED
  3599          Content-Type: application/vnd.docker.raw-stream
  3600          Connection: Upgrade
  3601          Upgrade: tcp
  3602  
  3603          [STREAM]
  3604          ```
  3605  
  3606          ### Stream format
  3607  
  3608          When the TTY setting is disabled in [`POST /containers/create`](#operation/PostContainerCreate), the stream over the hijacked connected is multiplexed to separate out `stdout` and `stderr`. The stream consists of a series of frames, each containing a header and a payload.
  3609  
  3610          The header contains the information which the stream writes (`stdout` or `stderr`). It also contains the size of the associated frame encoded in the last four bytes (`uint32`).
  3611  
  3612          It is encoded on the first eight bytes like this:
  3613  
  3614          ```go
  3615          header := [8]byte{STREAM_TYPE, 0, 0, 0, SIZE1, SIZE2, SIZE3, SIZE4}
  3616          ```
  3617  
  3618          `STREAM_TYPE` can be:
  3619  
  3620          - 0: `stdin` (is written on `stdout`)
  3621          - 1: `stdout`
  3622          - 2: `stderr`
  3623  
  3624          `SIZE1, SIZE2, SIZE3, SIZE4` are the four bytes of the `uint32` size encoded as big endian.
  3625  
  3626          Following the header is the payload, which is the specified number of bytes of `STREAM_TYPE`.
  3627  
  3628          The simplest way to implement this protocol is the following:
  3629  
  3630          1. Read 8 bytes.
  3631          2. Choose `stdout` or `stderr` depending on the first byte.
  3632          3. Extract the frame size from the last four bytes.
  3633          4. Read the extracted size and output it on the correct output.
  3634          5. Goto 1.
  3635  
  3636          ### Stream format when using a TTY
  3637  
  3638          When the TTY setting is enabled in [`POST /containers/create`](#operation/PostContainerCreate), the stream is not multiplexed. The data exchanged over the hijacked connection is simply the raw data from the process PTY and client's `stdin`.
  3639  
  3640        operationId: "PostContainerAttach"
  3641        produces:
  3642          - "application/vnd.docker.raw-stream"
  3643        responses:
  3644          101:
  3645            description: "no error, hints proxy about hijacking"
  3646          200:
  3647            description: "no error, no upgrade header found"
  3648          400:
  3649            description: "bad parameter"
  3650            schema:
  3651              $ref: "#/definitions/Error"
  3652          404:
  3653            description: "no such container"
  3654            schema:
  3655              $ref: "#/definitions/Error"
  3656            examples:
  3657              application/json:
  3658                message: "No such container: c2ada9df5af8"
  3659          500:
  3660            description: "server error"
  3661            schema:
  3662              $ref: "#/definitions/Error"
  3663        parameters:
  3664          - name: "id"
  3665            in: "path"
  3666            required: true
  3667            description: "ID or name of the container"
  3668            type: "string"
  3669          - name: "detachKeys"
  3670            in: "query"
  3671            description: "Override the key sequence for detaching a container.Format is a single character `[a-Z]` or `ctrl-<value>` where `<value>` is one of: `a-z`, `@`, `^`, `[`, `,` or `_`."
  3672            type: "string"
  3673          - name: "logs"
  3674            in: "query"
  3675            description: |
  3676              Replay previous logs from the container.
  3677  
  3678              This is useful for attaching to a container that has started and you want to output everything since the container started.
  3679  
  3680              If `stream` is also enabled, once all the previous output has been returned, it will seamlessly transition into streaming current output.
  3681            type: "boolean"
  3682            default: false
  3683          - name: "stream"
  3684            in: "query"
  3685            description: "Stream attached streams from the the time the request was made onwards"
  3686            type: "boolean"
  3687            default: false
  3688          - name: "stdin"
  3689            in: "query"
  3690            description: "Attach to stdin"
  3691            type: "boolean"
  3692            default: false
  3693          - name: "stdout"
  3694            in: "query"
  3695            description: "Attach to stdout"
  3696            type: "boolean"
  3697            default: false
  3698          - name: "stderr"
  3699            in: "query"
  3700            description: "Attach to stderr"
  3701            type: "boolean"
  3702            default: false
  3703        tags:
  3704          - "Container"
  3705    /containers/{id}/attach/ws:
  3706      get:
  3707        summary: "Attach to a container via a websocket"
  3708        operationId: "PostContainerAttachWebsocket"
  3709        responses:
  3710          101:
  3711            description: "no error, hints proxy about hijacking"
  3712          200:
  3713            description: "no error, no upgrade header found"
  3714          400:
  3715            description: "bad parameter"
  3716            schema:
  3717              $ref: "#/definitions/Error"
  3718          404:
  3719            description: "no such container"
  3720            schema:
  3721              $ref: "#/definitions/Error"
  3722            examples:
  3723              application/json:
  3724                message: "No such container: c2ada9df5af8"
  3725          500:
  3726            description: "server error"
  3727            schema:
  3728              $ref: "#/definitions/Error"
  3729        parameters:
  3730          - name: "id"
  3731            in: "path"
  3732            required: true
  3733            description: "ID or name of the container"
  3734            type: "string"
  3735          - name: "detachKeys"
  3736            in: "query"
  3737            description: "Override the key sequence for detaching a container.Format is a single character `[a-Z]` or `ctrl-<value>` where `<value>` is one of: `a-z`, `@`, `^`, `[`, `,`, or `_`."
  3738            type: "string"
  3739          - name: "logs"
  3740            in: "query"
  3741            description: "Return logs"
  3742            type: "boolean"
  3743            default: false
  3744          - name: "stream"
  3745            in: "query"
  3746            description: "Return stream"
  3747            type: "boolean"
  3748            default: false
  3749          - name: "stdin"
  3750            in: "query"
  3751            description: "Attach to stdin"
  3752            type: "boolean"
  3753            default: false
  3754          - name: "stdout"
  3755            in: "query"
  3756            description: "Attach to stdout"
  3757            type: "boolean"
  3758            default: false
  3759          - name: "stderr"
  3760            in: "query"
  3761            description: "Attach to stderr"
  3762            type: "boolean"
  3763            default: false
  3764        tags:
  3765          - "Container"
  3766    /containers/{id}/wait:
  3767      post:
  3768        summary: "Wait for a container"
  3769        description: "Block until a container stops, then returns the exit code."
  3770        operationId: "PostContainerWait"
  3771        produces:
  3772          - "application/json"
  3773        responses:
  3774          200:
  3775            description: "no error"
  3776            schema:
  3777              type: "object"
  3778              properties:
  3779                StatusCode:
  3780                  description: "Exit code of the container"
  3781                  type: "integer"
  3782          404:
  3783            description: "no such container"
  3784            schema:
  3785              $ref: "#/definitions/Error"
  3786            examples:
  3787              application/json:
  3788                message: "No such container: c2ada9df5af8"
  3789          500:
  3790            description: "server error"
  3791            schema:
  3792              $ref: "#/definitions/Error"
  3793        parameters:
  3794          - name: "id"
  3795            in: "path"
  3796            required: true
  3797            description: "ID or name of the container"
  3798            type: "string"
  3799        tags:
  3800          - "Container"
  3801    /containers/{id}:
  3802      delete:
  3803        summary: "Remove a container"
  3804        operationId: "DeleteContainer"
  3805        responses:
  3806          204:
  3807            description: "no error"
  3808          400:
  3809            description: "bad parameter"
  3810            schema:
  3811              $ref: "#/definitions/Error"
  3812          404:
  3813            description: "no such container"
  3814            schema:
  3815              $ref: "#/definitions/Error"
  3816            examples:
  3817              application/json:
  3818                message: "No such container: c2ada9df5af8"
  3819          500:
  3820            description: "server error"
  3821            schema:
  3822              $ref: "#/definitions/Error"
  3823        parameters:
  3824          - name: "id"
  3825            in: "path"
  3826            required: true
  3827            description: "ID or name of the container"
  3828            type: "string"
  3829          - name: "v"
  3830            in: "query"
  3831            description: "Remove the volumes associated with the container."
  3832            type: "boolean"
  3833            default: false
  3834          - name: "force"
  3835            in: "query"
  3836            description: "If the container is running, kill it before removing it."
  3837            type: "boolean"
  3838            default: false
  3839        tags:
  3840          - "Container"
  3841    /containers/{id}/archive:
  3842      head:
  3843        summary: "Get information about files in a container"
  3844        description: "A response header `X-Docker-Container-Path-Stat` is return containing a base64 - encoded JSON object with some filesystem header information about the path."
  3845        operationId: "HeadContainerArchive"
  3846        responses:
  3847          200:
  3848            description: "no error"
  3849            headers:
  3850              X-Docker-Container-Path-Stat:
  3851                type: "string"
  3852                description: "TODO"
  3853          400:
  3854            description: "client error, bad parameter, details in JSON response body, one of: must specify path parameter (path cannot be empty) not a directory (path was asserted to be a directory but exists as a file)"
  3855            schema:
  3856              $ref: "#/definitions/Error"
  3857          404:
  3858            description: "client error, resource not found, one of: 1) no such container (container id does not exist) 2) no such file or directory (path resource does not exist)"
  3859            schema:
  3860              $ref: "#/definitions/Error"
  3861            examples:
  3862              application/json:
  3863                message: "No such container: c2ada9df5af8"
  3864          500:
  3865            description: "server error"
  3866            schema:
  3867              $ref: "#/definitions/Error"
  3868        parameters:
  3869          - name: "id"
  3870            in: "path"
  3871            required: true
  3872            description: "ID or name of the container"
  3873            type: "string"
  3874          - name: "path"
  3875            in: "query"
  3876            required: true
  3877            description: "Resource in the container’s filesystem to archive."
  3878            type: "string"
  3879        tags:
  3880          - "Container"
  3881      get:
  3882        summary: "Get an archive of a filesystem resource in a container"
  3883        description: "Get an tar archive of a resource in the filesystem of container id."
  3884        operationId: "GetContainerArchive"
  3885        produces:
  3886          - "application/x-tar"
  3887        responses:
  3888          200:
  3889            description: "no error"
  3890          400:
  3891            description: "client error, bad parameter, details in JSON response body, one of: must specify path parameter (path cannot be empty) not a directory (path was asserted to be a directory but exists as a file)"
  3892            schema:
  3893              $ref: "#/definitions/Error"
  3894          404:
  3895            description: "client error, resource not found, one of: 1) no such container (container id does not exist) 2) no such file or directory (path resource does not exist)"
  3896            schema:
  3897              $ref: "#/definitions/Error"
  3898            examples:
  3899              application/json:
  3900                message: "No such container: c2ada9df5af8"
  3901          500:
  3902            description: "server error"
  3903            schema:
  3904              $ref: "#/definitions/Error"
  3905        parameters:
  3906          - name: "id"
  3907            in: "path"
  3908            required: true
  3909            description: "ID or name of the container"
  3910            type: "string"
  3911          - name: "path"
  3912            in: "query"
  3913            required: true
  3914            description: "Resource in the container’s filesystem to archive."
  3915            type: "string"
  3916        tags:
  3917          - "Container"
  3918      put:
  3919        summary: "Extract an archive of files or folders to a directory in a container"
  3920        description: "Upload a tar archive to be extracted to a path in the filesystem of container id."
  3921        operationId: "PutContainerArchive"
  3922        consumes:
  3923          - "application/x-tar"
  3924          - "application/octet-stream"
  3925        responses:
  3926          200:
  3927            description: "The content was extracted successfully"
  3928          400:
  3929            description: "Bad parameter"
  3930            schema:
  3931              $ref: "#/definitions/Error"
  3932          403:
  3933            description: "Permission denied, the volume or container rootfs is marked as read-only."
  3934            schema:
  3935              $ref: "#/definitions/Error"
  3936          404:
  3937            description: "No such container or path does not exist inside the container"
  3938            schema:
  3939              $ref: "#/definitions/Error"
  3940            examples:
  3941              application/json:
  3942                message: "No such container: c2ada9df5af8"
  3943          500:
  3944            description: "Server error"
  3945            schema:
  3946              $ref: "#/definitions/Error"
  3947        parameters:
  3948          - name: "id"
  3949            in: "path"
  3950            required: true
  3951            description: "ID or name of the container"
  3952            type: "string"
  3953          - name: "path"
  3954            in: "query"
  3955            required: true
  3956            description: "Path to a directory in the container to extract the archive’s contents into. "
  3957            type: "string"
  3958          - name: "noOverwriteDirNonDir"
  3959            in: "query"
  3960            description: "If “1”, “true”, or “True” then it will be an error if unpacking the given content would cause an existing directory to be replaced with a non-directory and vice versa."
  3961            type: "string"
  3962          - name: "inputStream"
  3963            in: "body"
  3964            required: true
  3965            description: "The input stream must be a tar archive compressed with one of the following algorithms: identity (no compression), gzip, bzip2, xz."
  3966            schema:
  3967              type: "string"
  3968        tags:
  3969          - "Container"
  3970    /images/json:
  3971      get:
  3972        summary: "List Images"
  3973        description: "Returns a list of images on the server. Note that it uses a different, smaller representation of an image than inspecting a single image."
  3974        operationId: "GetImageList"
  3975        produces:
  3976          - "application/json"
  3977        responses:
  3978          200:
  3979            description: "Summary image data for the images matching the query"
  3980            schema:
  3981              type: "array"
  3982              items:
  3983                $ref: "#/definitions/ImageSummary"
  3984            examples:
  3985              application/json:
  3986                - RepoTags:
  3987                    - "ubuntu:12.04"
  3988                    - "ubuntu:precise"
  3989                    - "ubuntu:latest"
  3990                  Id: "8dbd9e392a964056420e5d58ca5cc376ef18e2de93b5cc90e868a1bbc8318c1c"
  3991                  Created: 1365714795
  3992                  Size: 131506275
  3993                  VirtualSize: 131506275
  3994                  Labels: {}
  3995                - RepoTags:
  3996                    - "ubuntu:12.10"
  3997                    - "ubuntu:quantal"
  3998                  ParentId: "27cf784147099545"
  3999                  Id: "b750fe79269d2ec9a3c593ef05b4332b1d1a02a62b4accb2c21d589ff2f5f2dc"
  4000                  Created: 1364102658
  4001                  Size: 24653
  4002                  VirtualSize: 180116135
  4003                  Labels:
  4004                    com.example.version: "v1"
  4005          500:
  4006            description: "server error"
  4007            schema:
  4008              $ref: "#/definitions/Error"
  4009        parameters:
  4010          - name: "all"
  4011            in: "query"
  4012            description: "Show all images. Only images from a final layer (no children) are shown by default."
  4013            type: "boolean"
  4014            default: false
  4015          - name: "filters"
  4016            in: "query"
  4017            description: "A JSON encoded value of the filters (a `map[string][]string`) to process on the containers list"
  4018            type: "string"
  4019          - name: "filter"
  4020            in: "query"
  4021            description: "Only return images with the specified name."
  4022            type: "string"
  4023          - name: "digests"
  4024            in: "query"
  4025            description: "Show digest information as a `RepoDigests` field on each image."
  4026            type: "boolean"
  4027            default: false
  4028        tags:
  4029          - "Image"
  4030    /build:
  4031      post:
  4032        summary: "Build an image"
  4033        description: |
  4034          Build an image from a tar archive with a Dockerfile in it.
  4035  
  4036          The Dockerfile specifies how the image is built from the tar archive. It is typically in the archive's root, but can be at a different path or have a different name by specifying the `dockerfile` parameter. [See the Dockerfile reference for more information](https://docs.docker.com/engine/reference/builder/).
  4037  
  4038          The build is canceled if the client drops the connection by quitting or being killed.
  4039        operationId: "PostImageBuild"
  4040        consumes:
  4041          - "application/octet-stream"
  4042        produces:
  4043          - "application/json"
  4044        parameters:
  4045          - name: "inputStream"
  4046            in: "body"
  4047            description: "A tar archive compressed with one of the following algorithms: identity (no compression), gzip, bzip2, xz."
  4048            schema:
  4049              type: "string"
  4050              format: "binary"
  4051          - name: "dockerfile"
  4052            in: "query"
  4053            description: "Path within the build context to the `Dockerfile`. This is ignored if `remote` is specified and points to an individual filename."
  4054            type: "string"
  4055            default: "Dockerfile"
  4056          - name: "t"
  4057            in: "query"
  4058            description: "A name and optional tag to apply to the image in the `name:tag` format. If you omit the tag the default `latest` value is assumed. You can provide several `t` parameters."
  4059            type: "string"
  4060          - name: "remote"
  4061            in: "query"
  4062            description: "A Git repository URI or HTTP/HTTPS context URI. If the URI points to a single text file, the file’s contents are placed into a file called `Dockerfile` and the image is built from that file. If the URI points to a tarball, the file is downloaded by the daemon and the contents therein used as the context for the build. If the URI points to a tarball and the `dockerfile` parameter is also specified, there must be a file with the corresponding path inside the tarball."
  4063            type: "string"
  4064          - name: "q"
  4065            in: "query"
  4066            description: "Suppress verbose build output."
  4067            type: "boolean"
  4068            default: false
  4069          - name: "nocache"
  4070            in: "query"
  4071            description: "Do not use the cache when building the image."
  4072            type: "boolean"
  4073            default: false
  4074          - name: "pull"
  4075            in: "query"
  4076            description: "Attempt to pull the image even if an older image exists locally."
  4077            type: "string"
  4078          - name: "rm"
  4079            in: "query"
  4080            description: "Remove intermediate containers after a successful build."
  4081            type: "boolean"
  4082            default: true
  4083          - name: "forcerm"
  4084            in: "query"
  4085            description: "Always remove intermediate containers, even upon failure."
  4086            type: "boolean"
  4087            default: false
  4088          - name: "memory"
  4089            in: "query"
  4090            description: "Set memory limit for build."
  4091            type: "integer"
  4092          - name: "memswap"
  4093            in: "query"
  4094            description: "Total memory (memory + swap). Set as `-1` to disable swap."
  4095            type: "integer"
  4096          - name: "cpushares"
  4097            in: "query"
  4098            description: "CPU shares (relative weight)."
  4099            type: "integer"
  4100          - name: "cpusetcpus"
  4101            in: "query"
  4102            description: "CPUs in which to allow execution (e.g., `0-3`, `0,1`)."
  4103            type: "string"
  4104          - name: "cpuperiod"
  4105            in: "query"
  4106            description: "The length of a CPU period in microseconds."
  4107            type: "integer"
  4108          - name: "cpuquota"
  4109            in: "query"
  4110            description: "Microseconds of CPU time that the container can get in a CPU period."
  4111            type: "integer"
  4112          - name: "buildargs"
  4113            in: "query"
  4114            description: "JSON map of string pairs for build-time variables. Users pass these values at build-time. Docker uses the buildargs as the environment context for commands run via the Dockerfile’s RUN instruction, or for variable expansion in other Dockerfile instructions. This is not meant for passing secret values. [Read more about the buildargs instruction.](https://docs.docker.com/engine/reference/builder/#arg)"
  4115            type: "integer"
  4116          - name: "shmsize"
  4117            in: "query"
  4118            description: "Size of `/dev/shm` in bytes. The size must be greater than 0. If omitted the system uses 64MB."
  4119            type: "integer"
  4120          - name: "labels"
  4121            in: "query"
  4122            description: "Arbitrary key/value labels to set on the image, as a JSON map of string pairs."
  4123            type: "string"
  4124          - name: "Content-type"
  4125            in: "header"
  4126            type: "string"
  4127            enum:
  4128              - "application/tar"
  4129            default: "application/tar"
  4130          - name: "X-Registry-Config"
  4131            in: "header"
  4132            description: |
  4133              This is a base64-encoded JSON object with auth configurations for multiple registries that a build may refer to.
  4134  
  4135              The key is a registry URL, and the value is an auth configuration object, [as described in the authentication section](#section/Authentication). For example:
  4136  
  4137              ```
  4138              {
  4139                "docker.example.com": {
  4140                  "username": "janedoe",
  4141                  "password": "hunter2"
  4142                },
  4143                "https://index.docker.io/v1/": {
  4144                  "username": "mobydock",
  4145                  "password": "conta1n3rize14"
  4146                }
  4147              }
  4148              ```
  4149  
  4150              Only the registry domain name (and port if not the default 443) are required. However, for legacy reasons, the Docker Hub registry must be specified with both a `https://` prefix and a `/v1/` suffix even though Docker will prefer to use the v2 registry API.
  4151            type: "string"
  4152        responses:
  4153          200:
  4154            description: "no error"
  4155          500:
  4156            description: "server error"
  4157            schema:
  4158              $ref: "#/definitions/Error"
  4159        tags:
  4160          - "Image"
  4161    /images/create:
  4162      post:
  4163        summary: "Create an image"
  4164        description: "Create an image by either pulling it from a registry or importing it."
  4165        operationId: "PostImageCreate"
  4166        consumes:
  4167          - "text/plain"
  4168          - "application/octet-stream"
  4169        produces:
  4170          - "application/json"
  4171        responses:
  4172          200:
  4173            description: "no error"
  4174          500:
  4175            description: "server error"
  4176            schema:
  4177              $ref: "#/definitions/Error"
  4178        parameters:
  4179          - name: "fromImage"
  4180            in: "query"
  4181            description: "Name of the image to pull. The name may include a tag or digest. This parameter may only be used when pulling an image. The pull is cancelled if the HTTP connection is closed."
  4182            type: "string"
  4183          - name: "fromSrc"
  4184            in: "query"
  4185            description: "Source to import. The value may be a URL from which the image can be retrieved or `-` to read the image from the request body. This parameter may only be used when importing an image."
  4186            type: "string"
  4187          - name: "repo"
  4188            in: "query"
  4189            description: "Repository name given to an image when it is imported. The repo may include a tag. This parameter may only be used when importing an image."
  4190            type: "string"
  4191          - name: "tag"
  4192            in: "query"
  4193            description: "Tag or digest."
  4194            type: "string"
  4195          - name: "inputImage"
  4196            in: "body"
  4197            description: "Image content if the value `-` has been specified in fromSrc query parameter"
  4198            schema:
  4199              type: "string"
  4200            required: false
  4201          - name: "X-Registry-Auth"
  4202            in: "header"
  4203            description: "A base64-encoded auth configuration. [See the authentication section for details.](#section/Authentication)"
  4204            type: "string"
  4205        tags:
  4206          - "Image"
  4207    /images/{name}/json:
  4208      get:
  4209        summary: "Inspect an image"
  4210        description: "Return low-level information about an image."
  4211        operationId: "GetImageInspect"
  4212        produces:
  4213          - "application/json"
  4214        responses:
  4215          200:
  4216            description: "No error"
  4217            schema:
  4218              $ref: "#/definitions/Image"
  4219            examples:
  4220              application/json:
  4221                Id: "sha256:85f05633ddc1c50679be2b16a0479ab6f7637f8884e0cfe0f4d20e1ebb3d6e7c"
  4222                Container: "cb91e48a60d01f1e27028b4fc6819f4f290b3cf12496c8176ec714d0d390984a"
  4223                Comment: ""
  4224                Os: "linux"
  4225                Architecture: "amd64"
  4226                Parent: "sha256:91e54dfb11794fad694460162bf0cb0a4fa710cfa3f60979c177d920813e267c"
  4227                ContainerConfig:
  4228                  Tty: false
  4229                  Hostname: "e611e15f9c9d"
  4230                  Volumes: null
  4231                  Domainname: ""
  4232                  AttachStdout: false
  4233                  PublishService: ""
  4234                  AttachStdin: false
  4235                  OpenStdin: false
  4236                  StdinOnce: false
  4237                  NetworkDisabled: false
  4238                  OnBuild: []
  4239                  Image: "91e54dfb11794fad694460162bf0cb0a4fa710cfa3f60979c177d920813e267c"
  4240                  User: ""
  4241                  WorkingDir: ""
  4242                  Entrypoint: null
  4243                  MacAddress: ""
  4244                  AttachStderr: false
  4245                  Labels:
  4246                    com.example.license: "GPL"
  4247                    com.example.version: "1.0"
  4248                    com.example.vendor: "Acme"
  4249                  Env:
  4250                    - "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
  4251                  ExposedPorts: null
  4252                  Cmd:
  4253                    - "/bin/sh"
  4254                    - "-c"
  4255                    - "#(nop) LABEL com.example.vendor=Acme com.example.license=GPL com.example.version=1.0"
  4256                DockerVersion: "1.9.0-dev"
  4257                VirtualSize: 188359297
  4258                Size: 0
  4259                Author: ""
  4260                Created: "2015-09-10T08:30:53.26995814Z"
  4261                GraphDriver:
  4262                  Name: "aufs"
  4263                  Data: null
  4264                RepoDigests:
  4265                  - "localhost:5000/test/busybox/example@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf"
  4266                RepoTags:
  4267                  - "example:1.0"
  4268                  - "example:latest"
  4269                  - "example:stable"
  4270                Config:
  4271                  Image: "91e54dfb11794fad694460162bf0cb0a4fa710cfa3f60979c177d920813e267c"
  4272                  NetworkDisabled: false
  4273                  OnBuild: []
  4274                  StdinOnce: false
  4275                  PublishService: ""
  4276                  AttachStdin: false
  4277                  OpenStdin: false
  4278                  Domainname: ""
  4279                  AttachStdout: false
  4280                  Tty: false
  4281                  Hostname: "e611e15f9c9d"
  4282                  Volumes: null
  4283                  Cmd:
  4284                    - "/bin/bash"
  4285                  ExposedPorts: null
  4286                  Env:
  4287                    - "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
  4288                  Labels:
  4289                    com.example.vendor: "Acme"
  4290                    com.example.version: "1.0"
  4291                    com.example.license: "GPL"
  4292                  Entrypoint: null
  4293                  MacAddress: ""
  4294                  AttachStderr: false
  4295                  WorkingDir: ""
  4296                  User: ""
  4297                RootFS:
  4298                  Type: "layers"
  4299                  Layers:
  4300                    - "sha256:1834950e52ce4d5a88a1bbd131c537f4d0e56d10ff0dd69e66be3b7dfa9df7e6"
  4301                    - "sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef"
  4302          404:
  4303            description: "No such image"
  4304            schema:
  4305              $ref: "#/definitions/Error"
  4306            examples:
  4307              application/json:
  4308                message: "No such image: someimage (tag: latest)"
  4309          500:
  4310            description: "Server error"
  4311            schema:
  4312              $ref: "#/definitions/Error"
  4313        parameters:
  4314          - name: "name"
  4315            in: "path"
  4316            description: "Image name or id"
  4317            type: "string"
  4318            required: true
  4319        tags:
  4320          - "Image"
  4321    /images/{name}/history:
  4322      get:
  4323        summary: "Get the history of an image"
  4324        description: "Return parent layers of an image."
  4325        operationId: "GetImageHistory"
  4326        produces:
  4327          - "application/json"
  4328        responses:
  4329          200:
  4330            description: "No error"
  4331            schema:
  4332              type: "array"
  4333              items:
  4334                type: "object"
  4335                properties:
  4336                  Id:
  4337                    type: "string"
  4338                  Created:
  4339                    type: "integer"
  4340                    format: "int64"
  4341                  CreatedBy:
  4342                    type: "string"
  4343                  Tags:
  4344                    type: "array"
  4345                    items:
  4346                      type: "string"
  4347                  Size:
  4348                    type: "integer"
  4349                    format: "int64"
  4350                  Comment:
  4351                    type: "string"
  4352            examples:
  4353              application/json:
  4354                - Id: "3db9c44f45209632d6050b35958829c3a2aa256d81b9a7be45b362ff85c54710"
  4355                  Created: 1398108230
  4356                  CreatedBy: "/bin/sh -c #(nop) ADD file:eb15dbd63394e063b805a3c32ca7bf0266ef64676d5a6fab4801f2e81e2a5148 in /"
  4357                  Tags:
  4358                    - "ubuntu:lucid"
  4359                    - "ubuntu:10.04"
  4360                  Size: 182964289
  4361                  Comment: ""
  4362                - Id: "6cfa4d1f33fb861d4d114f43b25abd0ac737509268065cdfd69d544a59c85ab8"
  4363                  Created: 1398108222
  4364                  CreatedBy: "/bin/sh -c #(nop) MAINTAINER Tianon Gravi <admwiggin@gmail.com> - mkimage-debootstrap.sh -i iproute,iputils-ping,ubuntu-minimal -t lucid.tar.xz lucid http://archive.ubuntu.com/ubuntu/"
  4365                  Tags: null
  4366                  Size: 0
  4367                  Comment: ""
  4368                - Id: "511136ea3c5a64f264b78b5433614aec563103b4d4702f3ba7d4d2698e22c158"
  4369                  Created: 1371157430
  4370                  CreatedBy: ""
  4371                  Tags:
  4372                    - "scratch12:latest"
  4373                    - "scratch:latest"
  4374                  Size: 0
  4375                  Comment: "Imported from -"
  4376          404:
  4377            description: "No such image"
  4378            schema:
  4379              $ref: "#/definitions/Error"
  4380          500:
  4381            description: "Server error"
  4382            schema:
  4383              $ref: "#/definitions/Error"
  4384        parameters:
  4385          - name: "name"
  4386            in: "path"
  4387            description: "Image name or ID"
  4388            type: "string"
  4389            required: true
  4390        tags:
  4391          - "Image"
  4392    /images/{name}/push:
  4393      post:
  4394        summary: "Push an image"
  4395        description: |
  4396          Push an image to a registry.
  4397  
  4398          If you wish to push an image on to a private registry, that image must already have a tag which references the registry. For example, `registry.example.com/myimage:latest`.
  4399  
  4400          The push is cancelled if the HTTP connection is closed.
  4401        operationId: "PostImagePush"
  4402        consumes:
  4403          - "application/octet-stream"
  4404        responses:
  4405          200:
  4406            description: "No error"
  4407          404:
  4408            description: "No such image"
  4409            schema:
  4410              $ref: "#/definitions/Error"
  4411          500:
  4412            description: "Server error"
  4413            schema:
  4414              $ref: "#/definitions/Error"
  4415        parameters:
  4416          - name: "name"
  4417            in: "path"
  4418            description: "Image name or ID."
  4419            type: "string"
  4420            required: true
  4421          - name: "tag"
  4422            in: "query"
  4423            description: "The tag to associate with the image on the registry."
  4424            type: "string"
  4425          - name: "X-Registry-Auth"
  4426            in: "header"
  4427            description: "A base64-encoded auth configuration. [See the authentication section for details.](#section/Authentication)"
  4428            type: "string"
  4429            required: true
  4430        tags:
  4431          - "Image"
  4432    /images/{name}/tag:
  4433      post:
  4434        summary: "Tag an image"
  4435        description: "Tag an image so that it becomes part of a repository."
  4436        operationId: "PostImageTag"
  4437        responses:
  4438          201:
  4439            description: "No error"
  4440          400:
  4441            description: "Bad parameter"
  4442            schema:
  4443              $ref: "#/definitions/Error"
  4444          404:
  4445            description: "No such image"
  4446            schema:
  4447              $ref: "#/definitions/Error"
  4448          409:
  4449            description: "Conflict"
  4450            schema:
  4451              $ref: "#/definitions/Error"
  4452          500:
  4453            description: "Server error"
  4454            schema:
  4455              $ref: "#/definitions/Error"
  4456        parameters:
  4457          - name: "name"
  4458            in: "path"
  4459            description: "Image name or ID to tag."
  4460            type: "string"
  4461            required: true
  4462          - name: "repo"
  4463            in: "query"
  4464            description: "The repository to tag in. For example, `someuser/someimage`."
  4465            type: "string"
  4466          - name: "tag"
  4467            in: "query"
  4468            description: "The name of the new tag."
  4469            type: "string"
  4470        tags:
  4471          - "Image"
  4472    /images/{name}:
  4473      delete:
  4474        summary: "Remove an image"
  4475        description: |
  4476          Remove an image, along with any untagged parent images that were referenced by that image.
  4477  
  4478          Images can't be removed if they have descendant images, are being used by a running container or are being used by a build.
  4479        operationId: "DeleteImage"
  4480        produces:
  4481          - "application/json"
  4482        responses:
  4483          200:
  4484            description: "No error"
  4485            schema:
  4486              type: "array"
  4487              items:
  4488                type: "object"
  4489                properties:
  4490                  Untagged:
  4491                    description: "The image ID of an image that was untagged"
  4492                    type: "string"
  4493                  Deleted:
  4494                    description: "The image ID of an image that was deleted"
  4495                    type: "string"
  4496            examples:
  4497              application/json:
  4498                - Untagged: "3e2f21a89f"
  4499                - Deleted: "3e2f21a89f"
  4500                - Deleted: "53b4f83ac9"
  4501          404:
  4502            description: "No such image"
  4503            schema:
  4504              $ref: "#/definitions/Error"
  4505          409:
  4506            description: "Conflict"
  4507            schema:
  4508              $ref: "#/definitions/Error"
  4509          500:
  4510            description: "Server error"
  4511            schema:
  4512              $ref: "#/definitions/Error"
  4513        parameters:
  4514          - name: "name"
  4515            in: "path"
  4516            description: "Image name or ID"
  4517            type: "string"
  4518            required: true
  4519          - name: "force"
  4520            in: "query"
  4521            description: "Remove the image even if it is being used by stopped containers or has other tags"
  4522            type: "boolean"
  4523            default: false
  4524          - name: "noprune"
  4525            in: "query"
  4526            description: "Do not delete untagged parent images"
  4527            type: "boolean"
  4528            default: false
  4529        tags:
  4530          - "Image"
  4531    /images/search:
  4532      get:
  4533        summary: "Search images"
  4534        description: "Search for an image on Docker Hub."
  4535        operationId: "GetImageSearch"
  4536        produces:
  4537          - "application/json"
  4538        responses:
  4539          200:
  4540            description: "No error"
  4541            schema:
  4542              type: "array"
  4543              items:
  4544                type: "object"
  4545                properties:
  4546                  description:
  4547                    type: "string"
  4548                  is_official:
  4549                    type: "boolean"
  4550                  is_automated:
  4551                    type: "boolean"
  4552                  name:
  4553                    type: "string"
  4554                  star_count:
  4555                    type: "integer"
  4556            examples:
  4557              application/json:
  4558                - description: ""
  4559                  is_official: false
  4560                  is_automated: false
  4561                  name: "wma55/u1210sshd"
  4562                  star_count: 0
  4563                - description: ""
  4564                  is_official: false
  4565                  is_automated: false
  4566                  name: "jdswinbank/sshd"
  4567                  star_count: 0
  4568                - description: ""
  4569                  is_official: false
  4570                  is_automated: false
  4571                  name: "vgauthier/sshd"
  4572                  star_count: 0
  4573          500:
  4574            description: "Server error"
  4575            schema:
  4576              $ref: "#/definitions/Error"
  4577        parameters:
  4578          - name: "term"
  4579            in: "query"
  4580            description: "Term to search"
  4581            type: "string"
  4582            required: true
  4583          - name: "limit"
  4584            in: "query"
  4585            description: "Maximum number of results to return"
  4586            type: "integer"
  4587          - name: "filters"
  4588            in: "query"
  4589            description: |
  4590              A JSON encoded value of the filters (a `map[string][]string`) to process on the images list. Available filters:
  4591  
  4592              - `stars=<number>`
  4593              - `is-automated=(true|false)`
  4594              - `is-official=(true|false)`
  4595            type: "string"
  4596        tags:
  4597          - "Image"
  4598    /auth:
  4599      post:
  4600        summary: "Check auth configuration"
  4601        description: "Validate credentials for a registry and, if available, get an identity token for accessing the registry without password."
  4602        operationId: "checkAuthentication"
  4603        consumes:
  4604          - "application/json"
  4605        produces:
  4606          - "application/json"
  4607        responses:
  4608          200:
  4609            description: "No error"
  4610            schema:
  4611              type: "object"
  4612              properties:
  4613                Status:
  4614                  description: "The status of the authentication"
  4615                  type: "string"
  4616                IdentityToken:
  4617                  description: "An opaque token used to authenticate a user after a successful login"
  4618                  type: "string"
  4619            examples:
  4620              application/json:
  4621                Status: "Login Succeeded"
  4622                IdentityToken: "9cbaf023786cd7..."
  4623          204:
  4624            description: "No error"
  4625          500:
  4626            description: "Server error"
  4627            schema:
  4628              $ref: "#/definitions/Error"
  4629        parameters:
  4630          - name: "authConfig"
  4631            in: "body"
  4632            description: "Authentication to check"
  4633            schema:
  4634              $ref: "#/definitions/AuthConfig"
  4635        tags:
  4636          - "Misc"
  4637    /info:
  4638      get:
  4639        summary: "Get system information"
  4640        operationId: "getSystemInformation"
  4641        produces:
  4642          - "application/json"
  4643        responses:
  4644          200:
  4645            description: "No error"
  4646            schema:
  4647              type: "object"
  4648              properties:
  4649                Architecture:
  4650                  type: "string"
  4651                Containers:
  4652                  type: "integer"
  4653                ContainersRunning:
  4654                  type: "integer"
  4655                ContainersStopped:
  4656                  type: "integer"
  4657                ContainersPaused:
  4658                  type: "integer"
  4659                CpuCfsPeriod:
  4660                  type: "boolean"
  4661                CpuCfsQuota:
  4662                  type: "boolean"
  4663                Debug:
  4664                  type: "boolean"
  4665                DiscoveryBackend:
  4666                  type: "string"
  4667                DockerRootDir:
  4668                  type: "string"
  4669                Driver:
  4670                  type: "string"
  4671                DriverStatus:
  4672                  type: "array"
  4673                  items:
  4674                    type: "array"
  4675                    items:
  4676                      type: "string"
  4677                SystemStatus:
  4678                  type: "array"
  4679                  items:
  4680                    type: "array"
  4681                    items:
  4682                      type: "string"
  4683                Plugins:
  4684                  type: "object"
  4685                  properties:
  4686                    Volume:
  4687                      type: "array"
  4688                      items:
  4689                        type: "string"
  4690                    Network:
  4691                      type: "array"
  4692                      items:
  4693                        type: "string"
  4694                ExecutionDriver:
  4695                  type: "string"
  4696                ExperimentalBuild:
  4697                  type: "boolean"
  4698                HttpProxy:
  4699                  type: "string"
  4700                HttpsProxy:
  4701                  type: "string"
  4702                ID:
  4703                  type: "string"
  4704                IPv4Forwarding:
  4705                  type: "boolean"
  4706                Images:
  4707                  type: "integer"
  4708                IndexServerAddress:
  4709                  type: "string"
  4710                InitPath:
  4711                  type: "string"
  4712                InitSha1:
  4713                  type: "string"
  4714                KernelVersion:
  4715                  type: "string"
  4716                Labels:
  4717                  type: "array"
  4718                  items:
  4719                    type: "string"
  4720                MemTotal:
  4721                  type: "integer"
  4722                MemoryLimit:
  4723                  type: "boolean"
  4724                NCPU:
  4725                  type: "integer"
  4726                NEventsListener:
  4727                  type: "integer"
  4728                NFd:
  4729                  type: "integer"
  4730                NGoroutines:
  4731                  type: "integer"
  4732                Name:
  4733                  type: "string"
  4734                NoProxy:
  4735                  type: "string"
  4736                OomKillDisable:
  4737                  type: "boolean"
  4738                OSType:
  4739                  type: "string"
  4740                OomScoreAdj:
  4741                  type: "integer"
  4742                OperatingSystem:
  4743                  type: "string"
  4744                RegistryConfig:
  4745                  type: "object"
  4746                  properties:
  4747                    IndexConfigs:
  4748                      type: "object"
  4749                      additionalProperties:
  4750                        type: "object"
  4751                        properties:
  4752                          Mirrors:
  4753                            type: "array"
  4754                            items:
  4755                              type: "string"
  4756                          Name:
  4757                            type: "string"
  4758                          Official:
  4759                            type: "boolean"
  4760                          Secure:
  4761                            type: "boolean"
  4762                    InsecureRegistryCIDRs:
  4763                      type: "array"
  4764                      items:
  4765                        type: "string"
  4766                SwapLimit:
  4767                  type: "boolean"
  4768                SystemTime:
  4769                  type: "string"
  4770                ServerVersion:
  4771                  type: "string"
  4772            examples:
  4773              application/json:
  4774                Architecture: "x86_64"
  4775                ClusterStore: "etcd://localhost:2379"
  4776                CgroupDriver: "cgroupfs"
  4777                Containers: 11
  4778                ContainersRunning: 7
  4779                ContainersStopped: 3
  4780                ContainersPaused: 1
  4781                CpuCfsPeriod: true
  4782                CpuCfsQuota: true
  4783                Debug: false
  4784                DockerRootDir: "/var/lib/docker"
  4785                Driver: "btrfs"
  4786                DriverStatus:
  4787                  -
  4788                    - ""
  4789                ExperimentalBuild: false
  4790                HttpProxy: "http://test:test@localhost:8080"
  4791                HttpsProxy: "https://test:test@localhost:8080"
  4792                ID: "7TRN:IPZB:QYBB:VPBQ:UMPP:KARE:6ZNR:XE6T:7EWV:PKF4:ZOJD:TPYS"
  4793                IPv4Forwarding: true
  4794                Images: 16
  4795                IndexServerAddress: "https://index.docker.io/v1/"
  4796                InitPath: "/usr/bin/docker"
  4797                InitSha1: ""
  4798                KernelMemory: true
  4799                KernelVersion: "3.12.0-1-amd64"
  4800                Labels:
  4801                  - "storage=ssd"
  4802                MemTotal: 2099236864
  4803                MemoryLimit: true
  4804                NCPU: 1
  4805                NEventsListener: 0
  4806                NFd: 11
  4807                NGoroutines: 21
  4808                Name: "prod-server-42"
  4809                NoProxy: "9.81.1.160"
  4810                OomKillDisable: true
  4811                OSType: "linux"
  4812                OperatingSystem: "Boot2Docker"
  4813                Plugins:
  4814                  Volume:
  4815                    - "local"
  4816                  Network:
  4817                    - "null"
  4818                    - "host"
  4819                    - "bridge"
  4820                RegistryConfig:
  4821                  IndexConfigs:
  4822                    docker.io:
  4823                      Mirrors: null
  4824                      Name: "docker.io"
  4825                      Official: true
  4826                      Secure: true
  4827                  InsecureRegistryCIDRs:
  4828                    - "127.0.0.0/8"
  4829                SecurityOptions:
  4830                  - "apparmor"
  4831                  - "seccomp"
  4832                  - "selinux"
  4833                ServerVersion: "1.9.0"
  4834                SwapLimit: false
  4835                SystemStatus:
  4836                  -
  4837                    - "State"
  4838                    - "Healthy"
  4839                SystemTime: "2015-03-10T11:11:23.730591467-07:00"
  4840          500:
  4841            description: "Server error"
  4842            schema:
  4843              $ref: "#/definitions/Error"
  4844        tags:
  4845          - "Misc"
  4846    /version:
  4847      get:
  4848        summary: "Get version"
  4849        description: "Returns the version of Docker that is running and various information about the system that Docker is running on."
  4850        operationId: "getVersion"
  4851        produces:
  4852          - "application/json"
  4853        responses:
  4854          200:
  4855            description: "no error"
  4856            schema:
  4857              type: "object"
  4858              properties:
  4859                Version:
  4860                  type: "string"
  4861                ApiVersion:
  4862                  type: "string"
  4863                GitCommit:
  4864                  type: "string"
  4865                GoVersion:
  4866                  type: "string"
  4867                Os:
  4868                  type: "string"
  4869                Arch:
  4870                  type: "string"
  4871                KernelVersion:
  4872                  type: "string"
  4873                Experimental:
  4874                  type: "boolean"
  4875                BuildTime:
  4876                  type: "string"
  4877            examples:
  4878              application/json:
  4879                Version: "1.13.0"
  4880                Os: "linux"
  4881                KernelVersion: "3.19.0-23-generic"
  4882                GoVersion: "go1.6.3"
  4883                GitCommit: "deadbee"
  4884                Arch: "amd64"
  4885                ApiVersion: "1.25"
  4886                BuildTime: "2016-06-14T07:09:13.444803460+00:00"
  4887                Experimental: true
  4888          500:
  4889            description: "server error"
  4890            schema:
  4891              $ref: "#/definitions/Error"
  4892        tags:
  4893          - "Misc"
  4894    /_ping:
  4895      get:
  4896        summary: "Ping"
  4897        description: "This is a dummy endpoint you can use to test if the server is accessible."
  4898        operationId: "ping"
  4899        produces:
  4900          - "text/plain"
  4901        responses:
  4902          200:
  4903            description: "no error"
  4904            schema:
  4905              type: "string"
  4906              example: "OK"
  4907          500:
  4908            description: "server error"
  4909            schema:
  4910              $ref: "#/definitions/Error"
  4911        tags:
  4912          - "Misc"
  4913    /commit:
  4914      post:
  4915        summary: "Create a new image from a container"
  4916        operationId: "PostImageCommit"
  4917        consumes:
  4918          - "application/json"
  4919        produces:
  4920          - "application/json"
  4921        responses:
  4922          201:
  4923            description: "no error"
  4924            schema:
  4925              type: "object"
  4926              properties:
  4927                Id:
  4928                  description: "The ID of the image created"
  4929                  type: "string"
  4930            examples:
  4931              application/json:
  4932                Id: "596069db4bf5"
  4933          404:
  4934            description: "no such container"
  4935            schema:
  4936              $ref: "#/definitions/Error"
  4937            examples:
  4938              application/json:
  4939                message: "No such container: c2ada9df5af8"
  4940          500:
  4941            description: "server error"
  4942            schema:
  4943              $ref: "#/definitions/Error"
  4944        parameters:
  4945          - name: "containerConfig"
  4946            in: "body"
  4947            description: "The container configuration"
  4948            schema:
  4949              $ref: "#/definitions/Config"
  4950          - name: "container"
  4951            in: "query"
  4952            description: "The ID or name of the container to commit"
  4953            type: "string"
  4954          - name: "repo"
  4955            in: "query"
  4956            description: "Repository name for the created image"
  4957            type: "string"
  4958          - name: "tag"
  4959            in: "query"
  4960            description: "Tag name for the create image"
  4961            type: "string"
  4962          - name: "comment"
  4963            in: "query"
  4964            description: "Commit message"
  4965            type: "string"
  4966          - name: "author"
  4967            in: "query"
  4968            description: "Author of the image (e.g., `John Hannibal Smith <hannibal@a-team.com>`)"
  4969            type: "string"
  4970          - name: "pause"
  4971            in: "query"
  4972            description: "Whether to pause the container before committing"
  4973            type: "boolean"
  4974            default: true
  4975          - name: "changes"
  4976            in: "query"
  4977            description: "Dockerfile instructions to apply while committing"
  4978            type: "string"
  4979        tags:
  4980          - "Image"
  4981    /events:
  4982      get:
  4983        summary: "Monitor events"
  4984        description: |
  4985          Stream real-time events from the server.
  4986  
  4987          Various objects within Docker report events when something happens to them.
  4988  
  4989          Containers report these events: `attach, commit, copy, create, destroy, detach, die, exec_create, exec_detach, exec_start, export, kill, oom, pause, rename, resize, restart, start, stop, top, unpause, update`
  4990  
  4991          Images report these events: `delete, import, load, pull, push, save, tag, untag`
  4992  
  4993          Volumes report these events: `create, mount, unmount, destroy`
  4994  
  4995          Networks report these events: `create, connect, disconnect, destroy`
  4996  
  4997          The Docker daemon reports these events: `reload`
  4998  
  4999        operationId: "getEvents"
  5000        produces:
  5001          - "application/json"
  5002        responses:
  5003          200:
  5004            description: "no error"
  5005            schema:
  5006              type: "object"
  5007              properties:
  5008                Type:
  5009                  description: "The type of object emitting the event"
  5010                  type: "string"
  5011                Action:
  5012                  description: "The type of event"
  5013                  type: "string"
  5014                Actor:
  5015                  type: "object"
  5016                  properties:
  5017                    ID:
  5018                      description: "The ID of the object emitting the event"
  5019                      type: "string"
  5020                    Attributes:
  5021                      description: "Various key/value attributes of the object, depending on its type"
  5022                      type: "object"
  5023                      additionalProperties:
  5024                        type: "string"
  5025                time:
  5026                  description: "Timestamp of event"
  5027                  type: "integer"
  5028                timeNano:
  5029                  description: "Timestamp of event, with nanosecond accuracy"
  5030                  type: "integer"
  5031            examples:
  5032              application/json:
  5033                Type: "container"
  5034                Action: "create"
  5035                Actor:
  5036                  ID: "ede54ee1afda366ab42f824e8a5ffd195155d853ceaec74a927f249ea270c743"
  5037                  Attributes:
  5038                    com.example.some-label: "some-label-value"
  5039                    image: "alpine"
  5040                    name: "my-container"
  5041                time: 1461943101
  5042                timeNano: 1461943101381709551
  5043          500:
  5044            description: "server error"
  5045            schema:
  5046              $ref: "#/definitions/Error"
  5047        parameters:
  5048          - name: "since"
  5049            in: "query"
  5050            description: "Show events created since this timestamp then stream new events"
  5051            type: "string"
  5052          - name: "until"
  5053            in: "query"
  5054            description: "Show events created until this timestamp then stop streaming"
  5055            type: "string"
  5056          - name: "filters"
  5057            in: "query"
  5058            description: |
  5059              A JSON encoded value of filters (a `map[string][]string`) to process on the event list. Available filters:
  5060  
  5061              - `container=<string>` container name or ID
  5062              - `event=<string>` event type
  5063              - `image=<string>` image name or ID
  5064              - `label=<string>` image or container label
  5065              - `type=<string>` object to filter by, one of `container`, `image`, `volume`, `network`, or `daemon`
  5066              - `volume=<string>` volume name or ID
  5067              - `network=<string>` network name or ID
  5068              - `daemon=<string>` daemon name or ID
  5069            type: "string"
  5070        tags:
  5071          - "Misc"
  5072    /images/{name}/get:
  5073      get:
  5074        summary: "Export an image"
  5075        description: |
  5076          Get a tarball containing all images and metadata for a repository.
  5077  
  5078          If `name` is a specific name and tag (e.g. `ubuntu:latest`), then only that image (and its parents) are returned. If `name` is an image ID, similarly only that image (and its parents) are returned, but with the exclusion of the `repositories` file in the tarball, as there were no image names referenced.
  5079  
  5080          ### Image tarball format
  5081  
  5082          An image tarball contains one directory per image layer (named using its long ID), each containing these files:
  5083  
  5084          - `VERSION`: currently `1.0` - the file format version
  5085          - `json`: detailed layer information, similar to `docker inspect layer_id`
  5086          - `layer.tar`: A tarfile containing the filesystem changes in this layer
  5087  
  5088          The `layer.tar` file contains `aufs` style `.wh..wh.aufs` files and directories for storing attribute changes and deletions.
  5089  
  5090          If the tarball defines a repository, the tarball should also include a `repositories` file at the root that contains a list of repository and tag names mapped to layer IDs.
  5091  
  5092          ```json
  5093          {
  5094            "hello-world": {
  5095              "latest": "565a9d68a73f6706862bfe8409a7f659776d4d60a8d096eb4a3cbce6999cc2a1"
  5096            }
  5097          }
  5098          ```
  5099        operationId: "GetImage"
  5100        produces:
  5101          - "application/x-tar"
  5102        responses:
  5103          200:
  5104            description: "no error"
  5105            schema:
  5106              type: "string"
  5107              format: "binary"
  5108          500:
  5109            description: "server error"
  5110            schema:
  5111              $ref: "#/definitions/Error"
  5112        parameters:
  5113          - name: "name"
  5114            in: "path"
  5115            description: "Image name or ID"
  5116            type: "string"
  5117            required: true
  5118        tags:
  5119          - "Image"
  5120    /images/get:
  5121      get:
  5122        summary: "Export several images"
  5123        description: |
  5124          Get a tarball containing all images and metadata for several image repositories.
  5125  
  5126          For each value of the `names` parameter: if it is a specific name and tag (e.g. `ubuntu:latest`), then only that image (and its parents) are returned; if it is an image ID, similarly only that image (and its parents) are returned and there would be no names referenced in the 'repositories' file for this image ID.
  5127  
  5128          For details on the format, see [the export image endpoint](#operation/GetImage).
  5129        operationId: "GetImageSaveAll"
  5130        produces:
  5131          - "application/x-tar"
  5132        responses:
  5133          200:
  5134            description: "no error"
  5135            schema:
  5136              type: "string"
  5137              format: "binary"
  5138          500:
  5139            description: "server error"
  5140            schema:
  5141              $ref: "#/definitions/Error"
  5142        parameters:
  5143          - name: "names"
  5144            in: "query"
  5145            description: "Image names to filter by"
  5146            type: "array"
  5147            items:
  5148              type: "string"
  5149        tags:
  5150          - "Image"
  5151    /images/load:
  5152      post:
  5153        summary: "Import images"
  5154        description: |
  5155          Load a set of images and tags into a repository.
  5156  
  5157          For details on the format, see [the export image endpoint](#operation/GetImage).
  5158        operationId: "PostImageLoad"
  5159        consumes:
  5160          - "application/x-tar"
  5161        produces:
  5162          - "application/json"
  5163        responses:
  5164          200:
  5165            description: "no error"
  5166          500:
  5167            description: "server error"
  5168            schema:
  5169              $ref: "#/definitions/Error"
  5170        parameters:
  5171          - name: "imagesTarball"
  5172            in: "body"
  5173            description: "Tar archive containing images"
  5174            schema:
  5175              type: "string"
  5176              format: "binary"
  5177        tags:
  5178          - "Image"
  5179    /containers/{id}/exec:
  5180      post:
  5181        summary: "Create an exec instance"
  5182        description: "Run a command inside a running container."
  5183        operationId: "PostContainerExec"
  5184        consumes:
  5185          - "application/json"
  5186        produces:
  5187          - "application/json"
  5188        responses:
  5189          201:
  5190            description: "no error"
  5191            schema:
  5192              type: "object"
  5193              properties:
  5194                Id:
  5195                  description: "The ID of the exec instance created."
  5196                  type: "string"
  5197                Warnings:
  5198                  type: "array"
  5199                  items:
  5200                    type: "string"
  5201            examples:
  5202              application/json:
  5203                Id: "f90e34656806"
  5204                Warnings: []
  5205          404:
  5206            description: "no such container"
  5207            schema:
  5208              $ref: "#/definitions/Error"
  5209            examples:
  5210              application/json:
  5211                message: "No such container: c2ada9df5af8"
  5212          409:
  5213            description: "container is paused"
  5214            schema:
  5215              $ref: "#/definitions/Error"
  5216          500:
  5217            description: "Server error"
  5218            schema:
  5219              $ref: "#/definitions/Error"
  5220        parameters:
  5221          - name: "execConfig"
  5222            in: "body"
  5223            description: "Exec configuration"
  5224            schema:
  5225              type: "object"
  5226              properties:
  5227                AttachStdin:
  5228                  type: "boolean"
  5229                  description: "Attach to `stdin` of the exec command."
  5230                AttachStdout:
  5231                  type: "boolean"
  5232                  description: "Attach to `stdout` of the exec command."
  5233                AttachStderr:
  5234                  type: "boolean"
  5235                  description: "Attach to `stderr` of the exec command."
  5236                DetachKeys:
  5237                  type: "string"
  5238                  description: "Override the key sequence for detaching a container. Format is a single character `[a-Z]` or `ctrl-<value>` where `<value>` is one of: `a-z`, `@`, `^`, `[`, `,` or `_`."
  5239                Tty:
  5240                  type: "boolean"
  5241                  description: "Allocate a pseudo-TTY."
  5242                Cmd:
  5243                  type: "array"
  5244                  description: "Command to run, as a string or array of strings."
  5245                  items:
  5246                    type: "string"
  5247              example:
  5248                AttachStdin: false
  5249                AttachStdout: true
  5250                AttachStderr: true
  5251                DetachKeys: "ctrl-p,ctrl-q"
  5252                Tty: false
  5253                Cmd:
  5254                  - "date"
  5255            required: true
  5256          - name: "id"
  5257            in: "path"
  5258            description: "ID or name of container"
  5259            type: "string"
  5260            required: true
  5261        tags:
  5262          - "Exec"
  5263    /exec/{id}/start:
  5264      post:
  5265        summary: "Start an exec instance"
  5266        description: "Starts a previously set up exec instance. If detach is true, this endpoint returns immediately after starting the command. Otherwise, it sets up an interactive session with the command."
  5267        operationId: "PostExecStart"
  5268        consumes:
  5269          - "application/json"
  5270        produces:
  5271          - "application/vnd.docker.raw-stream"
  5272        responses:
  5273          200:
  5274            description: "No error"
  5275          404:
  5276            description: "No such exec instance"
  5277            schema:
  5278              $ref: "#/definitions/Error"
  5279          409:
  5280            description: "Container is stopped or paused"
  5281            schema:
  5282              $ref: "#/definitions/Error"
  5283        parameters:
  5284          - name: "execStartConfig"
  5285            in: "body"
  5286            schema:
  5287              type: "object"
  5288              properties:
  5289                Detach:
  5290                  type: "boolean"
  5291                  description: "Detach from the command."
  5292                Tty:
  5293                  type: "boolean"
  5294                  description: "Allocate a pseudo-TTY."
  5295              example:
  5296                Detach: false
  5297                Tty: false
  5298          - name: "id"
  5299            in: "path"
  5300            description: "Exec instance ID"
  5301            required: true
  5302            type: "string"
  5303        tags:
  5304          - "Exec"
  5305    /exec/{id}/resize:
  5306      post:
  5307        summary: "Resize an exec instance"
  5308        description: "Resize the TTY session used by an exec instance. This endpoint only works if `tty` was specified as part of creating and starting the exec instance."
  5309        operationId: "PostExecResize"
  5310        responses:
  5311          201:
  5312            description: "No error"
  5313          404:
  5314            description: "No such exec instance"
  5315            schema:
  5316              $ref: "#/definitions/Error"
  5317        parameters:
  5318          - name: "id"
  5319            in: "path"
  5320            description: "Exec instance ID"
  5321            required: true
  5322            type: "string"
  5323          - name: "h"
  5324            in: "query"
  5325            description: "Height of the TTY session in characters"
  5326            type: "integer"
  5327          - name: "w"
  5328            in: "query"
  5329            description: "Width of the TTY session in characters"
  5330            type: "integer"
  5331        tags:
  5332          - "Exec"
  5333    /exec/{id}/json:
  5334      get:
  5335        summary: "Inspect an exec instance"
  5336        description: "Return low-level information about an exec instance."
  5337        operationId: "PostExecInspect"
  5338        produces:
  5339          - "application/json"
  5340        responses:
  5341          200:
  5342            description: "No error"
  5343            schema:
  5344              type: "object"
  5345              properties:
  5346                ID:
  5347                  type: "string"
  5348                Running:
  5349                  type: "boolean"
  5350                ExitCode:
  5351                  type: "integer"
  5352                ProcessConfig:
  5353                  $ref: "#/definitions/ProcessConfig"
  5354                OpenStdin:
  5355                  type: "boolean"
  5356                OpenStderr:
  5357                  type: "boolean"
  5358                OpenStdout:
  5359                  type: "boolean"
  5360                ContainerID:
  5361                  type: "string"
  5362            examples:
  5363              application/json:
  5364                CanRemove: false
  5365                ContainerID: "b53ee82b53a40c7dca428523e34f741f3abc51d9f297a14ff874bf761b995126"
  5366                DetachKeys: ""
  5367                ExitCode: 2
  5368                ID: "f33bbfb39f5b142420f4759b2348913bd4a8d1a6d7fd56499cb41a1bb91d7b3b"
  5369                OpenStderr: true
  5370                OpenStdin: true
  5371                OpenStdout: true
  5372                ProcessConfig:
  5373                  arguments:
  5374                    - "-c"
  5375                    - "exit 2"
  5376                  entrypoint: "sh"
  5377                  privileged: false
  5378                  tty: true
  5379                  user: "1000"
  5380                Running: false
  5381          404:
  5382            description: "No such exec instance"
  5383            schema:
  5384              $ref: "#/definitions/Error"
  5385          500:
  5386            description: "Server error"
  5387            schema:
  5388              $ref: "#/definitions/Error"
  5389        parameters:
  5390          - name: "id"
  5391            in: "path"
  5392            description: "Exec instance ID"
  5393            required: true
  5394            type: "string"
  5395        tags:
  5396          - "Exec"
  5397  
  5398    /volumes:
  5399      get:
  5400        summary: "List volumes"
  5401        operationId: "VolumesList"
  5402        produces: ["application/json"]
  5403        responses:
  5404          200:
  5405            description: "Summary volume data that matches the query"
  5406            schema:
  5407              type: "object"
  5408              required: [Volumes, Warnings]
  5409              properties:
  5410                Volumes:
  5411                  type: "array"
  5412                  x-nullable: false
  5413                  description: "List of volumes"
  5414                  items:
  5415                    $ref: "#/definitions/Volume"
  5416                Warnings:
  5417                  type: "array"
  5418                  x-nullable: false
  5419                  description: "Warnings that occurred when fetching the list of volumes"
  5420                  items:
  5421                    type: "string"
  5422  
  5423            examples:
  5424              application/json:
  5425                Volumes:
  5426                  - Name: "tardis"
  5427                    Driver: "local"
  5428                    Mountpoint: "/var/lib/docker/volumes/tardis"
  5429                    Labels:
  5430                      com.example.some-label: "some-value"
  5431                      com.example.some-other-label: "some-other-value"
  5432                    Scope: "local"
  5433                Warnings: []
  5434          500:
  5435            description: "Server error"
  5436            schema:
  5437              $ref: "#/definitions/Error"
  5438        parameters:
  5439          - name: "filters"
  5440            in: "query"
  5441            description: |
  5442              JSON encoded value of the filters (a `map[string][]string`) to
  5443              process on the volumes list. Available filters:
  5444  
  5445              - `name=<volume-name>` Matches all or part of a volume name.
  5446              - `dangling=<boolean>` When set to `true` (or `1`), returns all
  5447                 volumes that are not in use by a container. When set to `false`
  5448                 (or `0`), only volumes that are in use by one or more
  5449                 containers are returned.
  5450              - `driver=<volume-driver-name>` Matches all or part of a volume
  5451                driver name.
  5452            type: "string"
  5453            format: "json"
  5454        tags:
  5455          - "Volume"
  5456  
  5457    /volumes/create:
  5458      post:
  5459        summary: "Create a volume"
  5460        operationId: "PostVolumesCreate"
  5461        consumes:
  5462          - "application/json"
  5463        produces:
  5464          - "application/json"
  5465        responses:
  5466          201:
  5467            description: "No error"
  5468            schema:
  5469              $ref: "#/definitions/Volume"
  5470          500:
  5471            description: "Server error"
  5472            schema:
  5473              $ref: "#/definitions/Error"
  5474        parameters:
  5475          - name: "volumeConfig"
  5476            in: "body"
  5477            required: true
  5478            description: "Volume configuration"
  5479            schema:
  5480              type: "object"
  5481              properties:
  5482                Name:
  5483                  description: "The new volume's name. If not specified, Docker generates a name."
  5484                  type: "string"
  5485                Driver:
  5486                  description: "Name of the volume driver to use."
  5487                  type: "string"
  5488                  default: "local"
  5489                DriverOpts:
  5490                  description: "A mapping of driver options and values. These options are passed directly to the driver and are driver specific."
  5491                  type: "object"
  5492                  additionalProperties:
  5493                    type: "string"
  5494                Labels:
  5495                  description: "A mapping of arbitrary key/value data to set on the volume."
  5496                  type: "object"
  5497                  additionalProperties:
  5498                    type: "string"
  5499              example:
  5500                Name: "tardis"
  5501                Labels:
  5502                  com.example.some-label: "some-value"
  5503                  com.example.some-other-label: "some-other-value"
  5504                Driver: "custom"
  5505        tags:
  5506          - "Volume"
  5507    /volumes/{name}:
  5508      get:
  5509        summary: "Inspect a volume"
  5510        operationId: "GetVolumesInspect"
  5511        produces:
  5512          - "application/json"
  5513        responses:
  5514          200:
  5515            description: "No error"
  5516            schema:
  5517              $ref: "#/definitions/Volume"
  5518          404:
  5519            description: "No such volume"
  5520            schema:
  5521              $ref: "#/definitions/Error"
  5522          500:
  5523            description: "Server error"
  5524            schema:
  5525              $ref: "#/definitions/Error"
  5526        parameters:
  5527          - name: "name"
  5528            in: "path"
  5529            required: true
  5530            description: "Volume name or ID"
  5531            type: "string"
  5532        tags:
  5533          - "Volume"
  5534      delete:
  5535        summary: "Remove a volume"
  5536        description: "Instruct the driver to remove the volume."
  5537        operationId: "DeleteVolumes"
  5538        responses:
  5539          204:
  5540            description: "No error"
  5541          404:
  5542            description: "No such volume or volume driver"
  5543            schema:
  5544              $ref: "#/definitions/Error"
  5545          409:
  5546            description: "Volume is in use and cannot be removed"
  5547            schema:
  5548              $ref: "#/definitions/Error"
  5549          500:
  5550            description: "Server error"
  5551            schema:
  5552              $ref: "#/definitions/Error"
  5553        parameters:
  5554          - name: "name"
  5555            in: "path"
  5556            required: true
  5557            description: "Volume name or ID"
  5558            type: "string"
  5559        tags:
  5560          - "Volume"
  5561    /networks:
  5562      get:
  5563        summary: "List networks"
  5564        operationId: "GetNetworksList"
  5565        produces:
  5566          - "application/json"
  5567        responses:
  5568          200:
  5569            description: "No error"
  5570            schema:
  5571              type: "array"
  5572              items:
  5573                $ref: "#/definitions/Network"
  5574            examples:
  5575              application/json:
  5576                - Name: "bridge"
  5577                  Id: "f2de39df4171b0dc801e8002d1d999b77256983dfc63041c0f34030aa3977566"
  5578                  Scope: "local"
  5579                  Driver: "bridge"
  5580                  EnableIPv6: false
  5581                  Internal: false
  5582                  IPAM:
  5583                    Driver: "default"
  5584                    Config:
  5585                      -
  5586                        Subnet: "172.17.0.0/16"
  5587                  Containers:
  5588                    39b69226f9d79f5634485fb236a23b2fe4e96a0a94128390a7fbbcc167065867:
  5589                      EndpointID: "ed2419a97c1d9954d05b46e462e7002ea552f216e9b136b80a7db8d98b442eda"
  5590                      MacAddress: "02:42:ac:11:00:02"
  5591                      IPv4Address: "172.17.0.2/16"
  5592                      IPv6Address: ""
  5593                  Options:
  5594                    com.docker.network.bridge.default_bridge: "true"
  5595                    com.docker.network.bridge.enable_icc: "true"
  5596                    com.docker.network.bridge.enable_ip_masquerade: "true"
  5597                    com.docker.network.bridge.host_binding_ipv4: "0.0.0.0"
  5598                    com.docker.network.bridge.name: "docker0"
  5599                    com.docker.network.driver.mtu: "1500"
  5600                - Name: "none"
  5601                  Id: "e086a3893b05ab69242d3c44e49483a3bbbd3a26b46baa8f61ab797c1088d794"
  5602                  Scope: "local"
  5603                  Driver: "null"
  5604                  EnableIPv6: false
  5605                  Internal: false
  5606                  IPAM:
  5607                    Driver: "default"
  5608                    Config: []
  5609                  Containers: {}
  5610                  Options: {}
  5611                - Name: "host"
  5612                  Id: "13e871235c677f196c4e1ecebb9dc733b9b2d2ab589e30c539efeda84a24215e"
  5613                  Scope: "local"
  5614                  Driver: "host"
  5615                  EnableIPv6: false
  5616                  Internal: false
  5617                  IPAM:
  5618                    Driver: "default"
  5619                    Config: []
  5620                  Containers: {}
  5621                  Options: {}
  5622          500:
  5623            description: "Server error"
  5624            schema:
  5625              $ref: "#/definitions/Error"
  5626        parameters:
  5627          - name: "filters"
  5628            in: "query"
  5629            description: |
  5630              JSON encoded value of the filters (a `map[string][]string`) to process on the networks list. Available filters:
  5631  
  5632              - `driver=<driver-name>` Matches a network's driver.
  5633              - `id=<network-id>` Matches all or part of a network ID.
  5634              - `label=<key>` or `label=<key>=<value>` of a network label.
  5635              - `name=<network-name>` Matches all or part of a network name.
  5636              - `type=["custom"|"builtin"]` Filters networks by type. The `custom` keyword returns all user-defined networks.
  5637            type: "string"
  5638        tags:
  5639          - "Network"
  5640    /networks/{id}:
  5641      get:
  5642        summary: "Inspect a network"
  5643        operationId: "GetNetworksInspect"
  5644        produces:
  5645          - "application/json"
  5646        responses:
  5647          200:
  5648            description: "No error"
  5649            schema:
  5650              $ref: "#/definitions/Network"
  5651          404:
  5652            description: "Network not found"
  5653            schema:
  5654              $ref: "#/definitions/Error"
  5655        parameters:
  5656          - name: "id"
  5657            in: "path"
  5658            description: "Network ID or name"
  5659            required: true
  5660            type: "string"
  5661        tags:
  5662          - "Network"
  5663      delete:
  5664        summary: "Remove a network"
  5665        operationId: "DeleteNetworks"
  5666        responses:
  5667          204:
  5668            description: "No error"
  5669          404:
  5670            description: "no such network"
  5671            schema:
  5672              $ref: "#/definitions/Error"
  5673          500:
  5674            description: "Server error"
  5675            schema:
  5676              $ref: "#/definitions/Error"
  5677        parameters:
  5678          - name: "id"
  5679            in: "path"
  5680            description: "Network ID or name"
  5681            required: true
  5682            type: "string"
  5683        tags:
  5684          - "Network"
  5685    /networks/create:
  5686      post:
  5687        summary: "Create a network"
  5688        operationId: "PostNetworksCreate"
  5689        consumes:
  5690          - "application/json"
  5691        produces:
  5692          - "application/json"
  5693        responses:
  5694          201:
  5695            description: "No error"
  5696            schema:
  5697              type: "object"
  5698              properties:
  5699                Id:
  5700                  description: "The ID of the created network."
  5701                  type: "string"
  5702                Warning:
  5703                  type: "string"
  5704              example:
  5705                Id: "22be93d5babb089c5aab8dbc369042fad48ff791584ca2da2100db837a1c7c30"
  5706                Warning: ""
  5707          404:
  5708            description: "plugin not found"
  5709            schema:
  5710              $ref: "#/definitions/Error"
  5711          500:
  5712            description: "Server error"
  5713            schema:
  5714              $ref: "#/definitions/Error"
  5715        parameters:
  5716          - name: "networkConfig"
  5717            in: "body"
  5718            description: "Network configuration"
  5719            required: true
  5720            schema:
  5721              type: "object"
  5722              required: ["Name"]
  5723              properties:
  5724                Name:
  5725                  description: "The network's name."
  5726                  type: "string"
  5727                CheckDuplicate:
  5728                  description: "Check for networks with duplicate names."
  5729                  type: "boolean"
  5730                Driver:
  5731                  description: "Name of the network driver plugin to use."
  5732                  type: "string"
  5733                  default: "bridge"
  5734                Internal:
  5735                  description: "Restrict external access to the network."
  5736                  type: "boolean"
  5737                IPAM:
  5738                  description: "Optional custom IP scheme for the network."
  5739                  $ref: "#/definitions/IPAM"
  5740                EnableIPv6:
  5741                  description: "Enable IPv6 on the network."
  5742                  type: "boolean"
  5743                Options:
  5744                  description: "Network specific options to be used by the drivers."
  5745                  type: "object"
  5746                  additionalProperties:
  5747                    type: "string"
  5748                Labels:
  5749                  description: "Arbitrary key/value metadata to attach to the network."
  5750                  type: "object"
  5751                  additionalProperties:
  5752                    type: "string"
  5753              example:
  5754                Name: "isolated_nw"
  5755                CheckDuplicate: false
  5756                Driver: "bridge"
  5757                EnableIPv6: true
  5758                IPAM:
  5759                  Config:
  5760                    - Subnet: "172.20.0.0/16"
  5761                      IPRange: "172.20.10.0/24"
  5762                      Gateway: "172.20.10.11"
  5763                    - Subnet: "2001:db8:abcd::/64"
  5764                      Gateway: "2001:db8:abcd::1011"
  5765                  Options:
  5766                    foo: "bar"
  5767                Internal: true
  5768                Options:
  5769                  com.docker.network.bridge.default_bridge: "true"
  5770                  com.docker.network.bridge.enable_icc: "true"
  5771                  com.docker.network.bridge.enable_ip_masquerade: "true"
  5772                  com.docker.network.bridge.host_binding_ipv4: "0.0.0.0"
  5773                  com.docker.network.bridge.name: "docker0"
  5774                  com.docker.network.driver.mtu: "1500"
  5775                Labels:
  5776                  com.example.some-label: "some-value"
  5777                  com.example.some-other-label: "some-other-value"
  5778        tags:
  5779          - "Network"
  5780    /networks/{id}/connect:
  5781      post:
  5782        summary: "Connect a container to a network"
  5783        operationId: "PostNetworksConnect"
  5784        consumes:
  5785          - "application/octet-stream"
  5786        responses:
  5787          200:
  5788            description: "No error"
  5789          403:
  5790            description: "Operation not supported for swarm scoped networks"
  5791            schema:
  5792              $ref: "#/definitions/Error"
  5793          404:
  5794            description: "Network or container not found"
  5795            schema:
  5796              $ref: "#/definitions/Error"
  5797          500:
  5798            description: "Server error"
  5799            schema:
  5800              $ref: "#/definitions/Error"
  5801        parameters:
  5802          - name: "id"
  5803            in: "path"
  5804            description: "Network ID or name"
  5805            required: true
  5806            type: "string"
  5807          - name: "container"
  5808            in: "body"
  5809            required: true
  5810            schema:
  5811              type: "object"
  5812              properties:
  5813                Container:
  5814                  type: "string"
  5815                  description: "The ID or name of the container to connect to the network."
  5816                EndpointConfig:
  5817                  $ref: "#/definitions/EndpointSettings"
  5818              example:
  5819                Container: "3613f73ba0e4"
  5820                EndpointConfig:
  5821                  IPAMConfig:
  5822                    IPv4Address: "172.24.56.89"
  5823                    IPv6Address: "2001:db8::5689"
  5824        tags:
  5825          - "Network"
  5826    /networks/{id}/disconnect:
  5827      post:
  5828        summary: "Disconnect a container from a network"
  5829        operationId: "PostNetworksDisconnect"
  5830        consumes:
  5831          - "application/json"
  5832        responses:
  5833          200:
  5834            description: "No error"
  5835          403:
  5836            description: "Operation not supported for swarm scoped networks"
  5837            schema:
  5838              $ref: "#/definitions/Error"
  5839          404:
  5840            description: "Network or container not found"
  5841            schema:
  5842              $ref: "#/definitions/Error"
  5843          500:
  5844            description: "Server error"
  5845            schema:
  5846              $ref: "#/definitions/Error"
  5847        parameters:
  5848          - name: "id"
  5849            in: "path"
  5850            description: "Network ID or name"
  5851            required: true
  5852            type: "string"
  5853          - name: "container"
  5854            in: "body"
  5855            required: true
  5856            schema:
  5857              type: "object"
  5858              properties:
  5859                Container:
  5860                  type: "string"
  5861                  description: "The ID or name of the container to disconnect from the network."
  5862                Force:
  5863                  type: "boolean"
  5864                  description: "Force the container to disconnect from the network."
  5865        tags:
  5866          - "Network"
  5867    /plugins:
  5868      get:
  5869        summary: "List plugins"
  5870        operationId: "GetPluginsList"
  5871        description: "Returns information about installed plugins."
  5872        produces:
  5873          - "application/json"
  5874        responses:
  5875          200:
  5876            description: "No error"
  5877            schema:
  5878              type: "array"
  5879              items:
  5880                $ref: "#/definitions/Plugin"
  5881              example:
  5882                - Id: "5724e2c8652da337ab2eedd19fc6fc0ec908e4bd907c7421bf6a8dfc70c4c078"
  5883                  Name: "tiborvass/no-remove"
  5884                  Tag: "latest"
  5885                  Active: true
  5886                  Config:
  5887                    Mounts:
  5888                      - Name: ""
  5889                        Description: ""
  5890                        Settable: null
  5891                        Source: "/data"
  5892                        Destination: "/data"
  5893                        Type: "bind"
  5894                        Options:
  5895                          - "shared"
  5896                          - "rbind"
  5897                      - Name: ""
  5898                        Description: ""
  5899                        Settable: null
  5900                        Source: null
  5901                        Destination: "/foobar"
  5902                        Type: "tmpfs"
  5903                        Options: null
  5904                    Env:
  5905                      - "DEBUG=1"
  5906                    Args: null
  5907                    Devices: null
  5908                  Manifest:
  5909                    ManifestVersion: "v0"
  5910                    Description: "A test plugin for Docker"
  5911                    Documentation: "https://docs.docker.com/engine/extend/plugins/"
  5912                    Interface:
  5913                      Types:
  5914                        - "docker.volumedriver/1.0"
  5915                      Socket: "plugins.sock"
  5916                    Entrypoint:
  5917                      - "plugin-no-remove"
  5918                      - "/data"
  5919                    Workdir: ""
  5920                    User: {}
  5921                    Network:
  5922                      Type: "host"
  5923                    Capabilities: null
  5924                    Mounts:
  5925                      - Name: ""
  5926                        Description: ""
  5927                        Settable: null
  5928                        Source: "/data"
  5929                        Destination: "/data"
  5930                        Type: "bind"
  5931                        Options:
  5932                          - "shared"
  5933                          - "rbind"
  5934                      - Name: ""
  5935                        Description: ""
  5936                        Settable: null
  5937                        Source: null
  5938                        Destination: "/foobar"
  5939                        Type: "tmpfs"
  5940                        Options: null
  5941                    Devices:
  5942                      - Name: "device"
  5943                        Description: "a host device to mount"
  5944                        Settable: null
  5945                        Path: "/dev/cpu_dma_latency"
  5946                    Env:
  5947                      - Name: "DEBUG"
  5948                        Description: "If set, prints debug messages"
  5949                        Settable: null
  5950                        Value: "1"
  5951                    Args:
  5952                      Name: "args"
  5953                      Description: "command line arguments"
  5954                      Settable: null
  5955                      Value: []
  5956          500:
  5957            description: "Server error"
  5958            schema:
  5959              $ref: "#/definitions/Error"
  5960        tags:
  5961          - "Plugins"
  5962    /plugins/pull:
  5963      post:
  5964        summary: "Install a plugin"
  5965        operationId: "PostPluginsPull"
  5966        description: |
  5967          Pulls and installs a plugin. After the plugin is installed, it can be enabled using the [`POST /plugins/{name}/enable` endpoint](#operation/PostPluginEnable).
  5968        produces:
  5969          - "application/json"
  5970        responses:
  5971          200:
  5972            description: "no error"
  5973            schema:
  5974              type: "array"
  5975              items:
  5976                description: "Describes a permission the user has to accept upon installing the plugin."
  5977                type: "object"
  5978                properties:
  5979                  Name:
  5980                    type: "string"
  5981                  Description:
  5982                    type: "string"
  5983                  Value:
  5984                    type: "array"
  5985                    items:
  5986                      type: "string"
  5987              example:
  5988                - Name: "network"
  5989                  Description: ""
  5990                  Value:
  5991                    - "host"
  5992                - Name: "mount"
  5993                  Description: ""
  5994                  Value:
  5995                    - "/data"
  5996                - Name: "device"
  5997                  Description: ""
  5998                  Value:
  5999                    - "/dev/cpu_dma_latency"
  6000          500:
  6001            description: "server error"
  6002            schema:
  6003              $ref: "#/definitions/Error"
  6004        parameters:
  6005          - name: "name"
  6006            in: "query"
  6007            description: |
  6008              The plugin to install.
  6009  
  6010              The `:latest` tag is optional, and is used as the default if omitted.
  6011            required: true
  6012            type: "string"
  6013          - name: "X-Registry-Auth"
  6014            in: "header"
  6015            description: "A base64-encoded auth configuration to use when pulling a plugin from a registry. [See the authentication section for details.](#section/Authentication)"
  6016            type: "string"
  6017        tags:
  6018          - "Plugins"
  6019    /plugins/{name}:
  6020      get:
  6021        summary: "Inspect a plugin"
  6022        operationId: "GetPluginsInspect"
  6023        responses:
  6024          200:
  6025            description: "no error"
  6026            schema:
  6027              $ref: "#/definitions/Plugin"
  6028          404:
  6029            description: "plugin is not installed"
  6030            schema:
  6031              $ref: "#/definitions/Error"
  6032          500:
  6033            description: "server error"
  6034            schema:
  6035              $ref: "#/definitions/Error"
  6036        parameters:
  6037          - name: "name"
  6038            in: "path"
  6039            description: "The name of the plugin. The `:latest` tag is optional, and is the default if omitted."
  6040            required: true
  6041            type: "string"
  6042        tags:
  6043          - "Plugins"
  6044      delete:
  6045        summary: "Remove a plugin"
  6046        operationId: "DeletePlugins"
  6047        responses:
  6048          200:
  6049            description: "no error"
  6050            schema:
  6051              $ref: "#/definitions/Plugin"
  6052          404:
  6053            description: "plugin is not installed"
  6054            schema:
  6055              $ref: "#/definitions/Error"
  6056          500:
  6057            description: "server error"
  6058            schema:
  6059              $ref: "#/definitions/Error"
  6060        parameters:
  6061          - name: "name"
  6062            in: "path"
  6063            description: "The name of the plugin. The `:latest` tag is optional, and is the default if omitted."
  6064            required: true
  6065            type: "string"
  6066          - name: "force"
  6067            in: "query"
  6068            description: "Disable the plugin before removing. This may result in issues if the plugin is in use by a container."
  6069            type: "boolean"
  6070            default: false
  6071        tags:
  6072          - "Plugins"
  6073    /plugins/{name}/enable:
  6074      post:
  6075        summary: "Enable a plugin"
  6076        operationId: "PostPluginsEnable"
  6077        responses:
  6078          200:
  6079            description: "no error"
  6080          500:
  6081            description: "server error"
  6082            schema:
  6083              $ref: "#/definitions/Error"
  6084        parameters:
  6085          - name: "name"
  6086            in: "path"
  6087            description: "The name of the plugin. The `:latest` tag is optional, and is the default if omitted."
  6088            required: true
  6089            type: "string"
  6090        tags:
  6091          - "Plugins"
  6092    /plugins/{name}/disable:
  6093      post:
  6094        summary: "Disable a plugin"
  6095        operationId: "PostPluginsDisable"
  6096        responses:
  6097          200:
  6098            description: "no error"
  6099          500:
  6100            description: "server error"
  6101            schema:
  6102              $ref: "#/definitions/Error"
  6103        parameters:
  6104          - name: "name"
  6105            in: "path"
  6106            description: "The name of the plugin. The `:latest` tag is optional, and is the default if omitted."
  6107            required: true
  6108            type: "string"
  6109        tags:
  6110          - "Plugins"
  6111    /nodes:
  6112      get:
  6113        summary: "List nodes"
  6114        operationId: "GetNodesList"
  6115        responses:
  6116          200:
  6117            description: "no error"
  6118            schema:
  6119              type: "array"
  6120              items:
  6121                $ref: "#/definitions/Node"
  6122          500:
  6123            description: "server error"
  6124            schema:
  6125              $ref: "#/definitions/Error"
  6126        parameters:
  6127          - name: "filters"
  6128            in: "query"
  6129            description: |
  6130              Filters to process on the nodes list, encoded as JSON (a `map[string][]string`).
  6131  
  6132              Available filters:
  6133              - `id=<node id>`
  6134              - `name=<node name>`
  6135              - `membership=`(`pending`|`accepted`|`rejected`)`
  6136              - `role=`(`worker`|`manager`)`
  6137            type: "string"
  6138        tags:
  6139          - "Nodes"
  6140    /nodes/{id}:
  6141      get:
  6142        summary: "Inspect a node"
  6143        operationId: "GetNodesInspect"
  6144        responses:
  6145          200:
  6146            description: "no error"
  6147            schema:
  6148              $ref: "#/definitions/Node"
  6149          404:
  6150            description: "no such node"
  6151            schema:
  6152              $ref: "#/definitions/Error"
  6153          500:
  6154            description: "server error"
  6155            schema:
  6156              $ref: "#/definitions/Error"
  6157        parameters:
  6158          - name: "id"
  6159            in: "path"
  6160            description: "The ID of the node"
  6161            type: "string"
  6162            required: true
  6163        tags:
  6164          - "Nodes"
  6165      delete:
  6166        summary: "Delete a node"
  6167        operationId: "DeleteNodes"
  6168        responses:
  6169          200:
  6170            description: "no error"
  6171          404:
  6172            description: "no such node"
  6173            schema:
  6174              $ref: "#/definitions/Error"
  6175          500:
  6176            description: "server error"
  6177            schema:
  6178              $ref: "#/definitions/Error"
  6179        parameters:
  6180          - name: "id"
  6181            in: "path"
  6182            description: "The ID of the node"
  6183            type: "string"
  6184            required: true
  6185          - name: "force"
  6186            in: "query"
  6187            description: "Force remove an active node"
  6188            default: false
  6189            type: "boolean"
  6190        tags:
  6191          - "Nodes"
  6192    /nodes/{id}/update:
  6193      post:
  6194        summary: "Update a node"
  6195        operationId: "PostNodesUpdate"
  6196        responses:
  6197          200:
  6198            description: "no error"
  6199          404:
  6200            description: "no such node"
  6201            schema:
  6202              $ref: "#/definitions/Error"
  6203          500:
  6204            description: "server error"
  6205            schema:
  6206              $ref: "#/definitions/Error"
  6207        parameters:
  6208          - name: "id"
  6209            in: "path"
  6210            description: "The ID of the node"
  6211            type: "string"
  6212            required: true
  6213          - name: "body"
  6214            in: "body"
  6215            schema:
  6216              $ref: "#/definitions/NodeSpec"
  6217          - name: "version"
  6218            in: "query"
  6219            description: "The version number of the node object being updated. This is required to avoid conflicting writes."
  6220            type: "integer"
  6221            format: "int64"
  6222            required: true
  6223        tags:
  6224          - "Nodes"
  6225    /swarm:
  6226      get:
  6227        summary: "Inspect swarm"
  6228        operationId: "GetSwarmInspect"
  6229        responses:
  6230          200:
  6231            description: "no error"
  6232            schema:
  6233              allOf:
  6234                - $ref: "#/definitions/ClusterInfo"
  6235                - type: "object"
  6236                  properties:
  6237                    JoinTokens:
  6238                      description: "The tokens workers and managers need to join the swarm."
  6239                      type: "object"
  6240                      properties:
  6241                        Worker:
  6242                          description: "The token workers can use to join the swarm."
  6243                          type: "string"
  6244                        Manager:
  6245                          description: "The token managers can use to join the swarm."
  6246                          type: "string"
  6247              example:
  6248                CreatedAt: "2016-08-15T16:00:20.349727406Z"
  6249                Spec:
  6250                  Dispatcher:
  6251                    HeartbeatPeriod: 5000000000
  6252                  Orchestration:
  6253                    TaskHistoryRetentionLimit: 10
  6254                  CAConfig:
  6255                    NodeCertExpiry: 7776000000000000
  6256                  Raft:
  6257                    LogEntriesForSlowFollowers: 500
  6258                    HeartbeatTick: 1
  6259                    SnapshotInterval: 10000
  6260                    ElectionTick: 3
  6261                  TaskDefaults: {}
  6262                  Name: "default"
  6263                JoinTokens:
  6264                  Worker: "SWMTKN-1-1h8aps2yszaiqmz2l3oc5392pgk8e49qhx2aj3nyv0ui0hez2a-6qmn92w6bu3jdvnglku58u11a"
  6265                  Manager: "SWMTKN-1-1h8aps2yszaiqmz2l3oc5392pgk8e49qhx2aj3nyv0ui0hez2a-8llk83c4wm9lwioey2s316r9l"
  6266                ID: "70ilmkj2f6sp2137c753w2nmt"
  6267                UpdatedAt: "2016-08-15T16:32:09.623207604Z"
  6268                Version:
  6269                  Index: 51
  6270          500:
  6271            description: "server error"
  6272            schema:
  6273              $ref: "#/definitions/Error"
  6274        tags:
  6275          - "Swarm"
  6276    /swarm/init:
  6277      post:
  6278        summary: "Initialize a new swarm"
  6279        operationId: "PostSwarmInit"
  6280        produces:
  6281          - "application/json"
  6282          - "text/plain"
  6283        responses:
  6284          200:
  6285            description: "no error"
  6286            schema:
  6287              description: "The node ID"
  6288              type: "string"
  6289              example: "7v2t30z9blmxuhnyo6s4cpenp"
  6290          400:
  6291            description: "bad parameter"
  6292            schema:
  6293              $ref: "#/definitions/Error"
  6294          406:
  6295            description: "node is already part of a swarm"
  6296            schema:
  6297              $ref: "#/definitions/Error"
  6298          500:
  6299            description: "server error"
  6300            schema:
  6301              $ref: "#/definitions/Error"
  6302        parameters:
  6303          - name: "body"
  6304            in: "body"
  6305            required: true
  6306            schema:
  6307              type: "object"
  6308              properties:
  6309                ListenAddr:
  6310                  description: "Listen address used for inter-manager communication, as well as determining the networking interface used for the VXLAN Tunnel Endpoint (VTEP). This can either be an address/port combination in the form `192.168.1.1:4567`, or an interface followed by a port number, like `eth0:4567`. If the port number is omitted, the default swarm listening port is used."
  6311                  type: "string"
  6312                AdvertiseAddr:
  6313                  description: "Externally reachable address advertised to other nodes. This can either be an address/port combination in the form `192.168.1.1:4567`, or an interface followed by a port 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."
  6314                  type: "string"
  6315                ForceNewCluster:
  6316                  description: "Force creation of a new swarm."
  6317                  type: "boolean"
  6318                Spec:
  6319                  $ref: "#/definitions/SwarmSpec"
  6320              example:
  6321                ListenAddr: "0.0.0.0:2377"
  6322                AdvertiseAddr: "192.168.1.1:2377"
  6323                ForceNewCluster: false
  6324                Spec:
  6325                  Orchestration: {}
  6326                  Raft: {}
  6327                  Dispatcher: {}
  6328                  CAConfig: {}
  6329        tags:
  6330          - "Swarm"
  6331    /swarm/join:
  6332      post:
  6333        summary: "Join an existing swarm"
  6334        operationId: "PostSwarmJoin"
  6335        responses:
  6336          200:
  6337            description: "no error"
  6338          400:
  6339            description: "bad parameter"
  6340            schema:
  6341              $ref: "#/definitions/Error"
  6342          406:
  6343            description: "node is already part of a swarm"
  6344            schema:
  6345              $ref: "#/definitions/Error"
  6346          500:
  6347            description: "server error"
  6348            schema:
  6349              $ref: "#/definitions/Error"
  6350        parameters:
  6351          - name: "body"
  6352            in: "body"
  6353            required: true
  6354            schema:
  6355              type: "object"
  6356              properties:
  6357                ListenAddr:
  6358                  description: "Listen address used for inter-manager communication if the node gets promoted to manager, as well as determining the networking interface used for the VXLAN Tunnel Endpoint (VTEP)."
  6359                  type: "string"
  6360                AdvertiseAddr:
  6361                  description: "Externally reachable address advertised to other nodes. This can either be an address/port combination in the form `192.168.1.1:4567`, or an interface followed by a port 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."
  6362                  type: "string"
  6363                RemoteAddrs:
  6364                  description: "Addresses of manager nodes already participating in the swarm."
  6365                  type: "string"
  6366                JoinToken:
  6367                  description: "Secret token for joining this swarm."
  6368                  type: "string"
  6369              example:
  6370                ListenAddr: "0.0.0.0:2377"
  6371                AdvertiseAddr: "192.168.1.1:2377"
  6372                RemoteAddrs:
  6373                  - "node1:2377"
  6374                JoinToken: "SWMTKN-1-3pu6hszjas19xyp7ghgosyx9k8atbfcr8p2is99znpy26u2lkl-7p73s1dx5in4tatdymyhg9hu2"
  6375        tags:
  6376          - "Swarm"
  6377    /swarm/leave:
  6378      post:
  6379        summary: "Leave a swarm"
  6380        operationId: "PostSwarmLeave"
  6381        responses:
  6382          200:
  6383            description: "no error"
  6384          406:
  6385            description: "node is not part of a swarm"
  6386            schema:
  6387              $ref: "#/definitions/Error"
  6388          500:
  6389            description: "server error"
  6390            schema:
  6391              $ref: "#/definitions/Error"
  6392        parameters:
  6393          - name: "force"
  6394            description: "Force leave swarm, even if this is the last manager or that it will break the cluster."
  6395            in: "query"
  6396            type: "boolean"
  6397            default: false
  6398        tags:
  6399          - "Swarm"
  6400    /swarm/update:
  6401      post:
  6402        summary: "Update a swarm"
  6403        operationId: "PostSwarmUpdate"
  6404        responses:
  6405          200:
  6406            description: "no error"
  6407          400:
  6408            description: "bad parameter"
  6409            schema:
  6410              $ref: "#/definitions/Error"
  6411          406:
  6412            description: "node is not part of a swarm"
  6413            schema:
  6414              $ref: "#/definitions/Error"
  6415          500:
  6416            description: "server error"
  6417            schema:
  6418              $ref: "#/definitions/Error"
  6419        parameters:
  6420          - name: "body"
  6421            in: "body"
  6422            required: true
  6423            schema:
  6424              $ref: "#/definitions/SwarmSpec"
  6425          - name: "version"
  6426            in: "query"
  6427            description: "The version number of the swarm object being updated. This is required to avoid conflicting writes."
  6428            type: "integer"
  6429            format: "int64"
  6430            required: true
  6431          - name: "rotateWorkerToken"
  6432            in: "query"
  6433            description: "Rotate the worker join token."
  6434            type: "boolean"
  6435            default: false
  6436          - name: "rotateManagerToken"
  6437            in: "query"
  6438            description: "Rotate the manager join token."
  6439            type: "boolean"
  6440            default: false
  6441        tags:
  6442          - "Swarm"
  6443    /services:
  6444      get:
  6445        summary: "List services"
  6446        operationId: "GetServicesList"
  6447        responses:
  6448          200:
  6449            description: "no error"
  6450            schema:
  6451              type: "array"
  6452              items:
  6453                $ref: "#/definitions/Service"
  6454          500:
  6455            description: "server error"
  6456            schema:
  6457              $ref: "#/definitions/Error"
  6458        parameters:
  6459          - name: "filters"
  6460            in: "query"
  6461            type: "string"
  6462            description: |
  6463              A JSON encoded value of the filters (a `map[string][]string`) to process on the services list. Available filters:
  6464  
  6465              - `id=<node id>`
  6466              - `name=<node name>`
  6467        tags:
  6468          - "Services"
  6469    /services/create:
  6470      post:
  6471        summary: "Create a service"
  6472        operationId: "PostServicesCreate"
  6473        consumes:
  6474          - "application/json"
  6475        produces:
  6476          - "application/json"
  6477        responses:
  6478          201:
  6479            description: "no error"
  6480            schema:
  6481              type: "object"
  6482              properties:
  6483                ID:
  6484                  description: "The ID of the created service."
  6485                  type: "string"
  6486              example:
  6487                ID: "ak7w3gjqoa3kuz8xcpnyy0pvl"
  6488          406:
  6489            description: "server error or node is not part of a swarm"
  6490            schema:
  6491              $ref: "#/definitions/Error"
  6492          409:
  6493            description: "name conflicts with an existing service"
  6494            schema:
  6495              $ref: "#/definitions/Error"
  6496          500:
  6497            description: "server error"
  6498            schema:
  6499              $ref: "#/definitions/Error"
  6500        parameters:
  6501          - name: "body"
  6502            in: "body"
  6503            required: true
  6504            schema:
  6505              allOf:
  6506                - $ref: "#/definitions/ServiceSpec"
  6507                - example:
  6508                    Name: "web"
  6509                    TaskTemplate:
  6510                      ContainerSpec:
  6511                        Image: "nginx:alpine"
  6512                        Mounts:
  6513                          -
  6514                            ReadOnly: true
  6515                            Source: "web-data"
  6516                            Target: "/usr/share/nginx/html"
  6517                            Type: "volume"
  6518                            VolumeOptions:
  6519                              DriverConfig: {}
  6520                              Labels:
  6521                                com.example.something: "something-value"
  6522                        User: "33"
  6523                      LogDriver:
  6524                        Name: "json-file"
  6525                        Options:
  6526                          max-file: "3"
  6527                          max-size: "10M"
  6528                      Placement: {}
  6529                      Resources:
  6530                        Limits:
  6531                          MemoryBytes: 104857600
  6532                        Reservations: {}
  6533                      RestartPolicy:
  6534                        Condition: "on-failure"
  6535                        Delay: 10000000000
  6536                        MaxAttempts: 10
  6537                    Mode:
  6538                      Replicated:
  6539                        Replicas: 4
  6540                    UpdateConfig:
  6541                      Delay: 30000000000
  6542                      Parallelism: 2
  6543                      FailureAction: "pause"
  6544                    EndpointSpec:
  6545                      Ports:
  6546                        -
  6547                          Protocol: "tcp"
  6548                          PublishedPort: 8080
  6549                          TargetPort: 80
  6550                    Labels:
  6551                      foo: "bar"
  6552          - name: "X-Registry-Auth"
  6553            in: "header"
  6554            description: "A base64-encoded auth configuration for pulling from private registries. [See the authentication section for details.](#section/Authentication)"
  6555            type: "string"
  6556        tags:
  6557          - "Services"
  6558    /services/{id}:
  6559      get:
  6560        summary: "Inspect a service"
  6561        operationId: "GetServicesInspect"
  6562        responses:
  6563          200:
  6564            description: "no error"
  6565            schema:
  6566              $ref: "#/definitions/Service"
  6567          404:
  6568            description: "no such service"
  6569            schema:
  6570              $ref: "#/definitions/Error"
  6571          500:
  6572            description: "server error"
  6573            schema:
  6574              $ref: "#/definitions/Error"
  6575        parameters:
  6576          - name: "id"
  6577            in: "path"
  6578            description: "ID or name of service."
  6579            required: true
  6580            type: "string"
  6581        tags:
  6582          - "Services"
  6583      delete:
  6584        summary: "Delete a service"
  6585        operationId: "DeleteServices"
  6586        responses:
  6587          200:
  6588            description: "no error"
  6589          404:
  6590            description: "no such service"
  6591            schema:
  6592              $ref: "#/definitions/Error"
  6593          500:
  6594            description: "server error"
  6595            schema:
  6596              $ref: "#/definitions/Error"
  6597        parameters:
  6598          - name: "id"
  6599            in: "path"
  6600            description: "ID or name of service."
  6601            required: true
  6602            type: "string"
  6603        tags:
  6604          - "Services"
  6605    /services/{id}/update:
  6606      post:
  6607        summary: "Update a service"
  6608        operationId: "PostServicesUpdate"
  6609        responses:
  6610          200:
  6611            description: "no error"
  6612          404:
  6613            description: "no such service"
  6614            schema:
  6615              $ref: "#/definitions/Error"
  6616          500:
  6617            description: "server error"
  6618            schema:
  6619              $ref: "#/definitions/Error"
  6620        parameters:
  6621          - name: "id"
  6622            in: "path"
  6623            description: "ID or name of service."
  6624            required: true
  6625            type: "string"
  6626          - name: "body"
  6627            in: "body"
  6628            required: true
  6629            schema:
  6630              allOf:
  6631                - $ref: "#/definitions/ServiceSpec"
  6632                - example:
  6633                    Name: "top"
  6634                    TaskTemplate:
  6635                      ContainerSpec:
  6636                        Image: "busybox"
  6637                        Args:
  6638                          - "top"
  6639                      Resources:
  6640                        Limits: {}
  6641                        Reservations: {}
  6642                      RestartPolicy:
  6643                        Condition: "any"
  6644                        MaxAttempts: 0
  6645                      Placement: {}
  6646                    Mode:
  6647                      Replicated:
  6648                        Replicas: 1
  6649                    UpdateConfig:
  6650                      Parallelism: 1
  6651                    EndpointSpec:
  6652                      Mode: "vip"
  6653  
  6654          - name: "version"
  6655            in: "query"
  6656            description: "The version number of the service object being updated. This is required to avoid conflicting writes."
  6657            required: true
  6658            type: "integer"
  6659          - name: "X-Registry-Auth"
  6660            in: "header"
  6661            description: "A base64-encoded auth configuration for pulling from private registries. [See the authentication section for details.](#section/Authentication)"
  6662            type: "string"
  6663  
  6664        tags:
  6665          - "Services"
  6666    /tasks:
  6667      get:
  6668        summary: "List tasks"
  6669        operationId: "GetTasksList"
  6670        produces:
  6671          - "application/json"
  6672        responses:
  6673          200:
  6674            description: "no error"
  6675            schema:
  6676              type: "array"
  6677              items:
  6678                $ref: "#/definitions/Task"
  6679              example:
  6680                - ID: "0kzzo1i0y4jz6027t0k7aezc7"
  6681                  Version:
  6682                    Index: 71
  6683                  CreatedAt: "2016-06-07T21:07:31.171892745Z"
  6684                  UpdatedAt: "2016-06-07T21:07:31.376370513Z"
  6685                  Spec:
  6686                    ContainerSpec:
  6687                      Image: "redis"
  6688                    Resources:
  6689                      Limits: {}
  6690                      Reservations: {}
  6691                    RestartPolicy:
  6692                      Condition: "any"
  6693                      MaxAttempts: 0
  6694                    Placement: {}
  6695                  ServiceID: "9mnpnzenvg8p8tdbtq4wvbkcz"
  6696                  Slot: 1
  6697                  NodeID: "60gvrl6tm78dmak4yl7srz94v"
  6698                  Status:
  6699                    Timestamp: "2016-06-07T21:07:31.290032978Z"
  6700                    State: "running"
  6701                    Message: "started"
  6702                    ContainerStatus:
  6703                      ContainerID: "e5d62702a1b48d01c3e02ca1e0212a250801fa8d67caca0b6f35919ebc12f035"
  6704                      PID: 677
  6705                  DesiredState: "running"
  6706                  NetworksAttachments:
  6707                    - Network:
  6708                        ID: "4qvuz4ko70xaltuqbt8956gd1"
  6709                        Version:
  6710                          Index: 18
  6711                        CreatedAt: "2016-06-07T20:31:11.912919752Z"
  6712                        UpdatedAt: "2016-06-07T21:07:29.955277358Z"
  6713                        Spec:
  6714                          Name: "ingress"
  6715                          Labels:
  6716                            com.docker.swarm.internal: "true"
  6717                          DriverConfiguration: {}
  6718                          IPAMOptions:
  6719                            Driver: {}
  6720                            Configs:
  6721                              - Subnet: "10.255.0.0/16"
  6722                                Gateway: "10.255.0.1"
  6723                        DriverState:
  6724                          Name: "overlay"
  6725                          Options:
  6726                            com.docker.network.driver.overlay.vxlanid_list: "256"
  6727                        IPAMOptions:
  6728                          Driver:
  6729                            Name: "default"
  6730                          Configs:
  6731                            - Subnet: "10.255.0.0/16"
  6732                              Gateway: "10.255.0.1"
  6733                      Addresses:
  6734                        - "10.255.0.10/16"
  6735                - ID: "1yljwbmlr8er2waf8orvqpwms"
  6736                  Version:
  6737                    Index: 30
  6738                  CreatedAt: "2016-06-07T21:07:30.019104782Z"
  6739                  UpdatedAt: "2016-06-07T21:07:30.231958098Z"
  6740                  Name: "hopeful_cori"
  6741                  Spec:
  6742                    ContainerSpec:
  6743                      Image: "redis"
  6744                    Resources:
  6745                      Limits: {}
  6746                      Reservations: {}
  6747                    RestartPolicy:
  6748                      Condition: "any"
  6749                      MaxAttempts: 0
  6750                    Placement: {}
  6751                  ServiceID: "9mnpnzenvg8p8tdbtq4wvbkcz"
  6752                  Slot: 1
  6753                  NodeID: "60gvrl6tm78dmak4yl7srz94v"
  6754                  Status:
  6755                    Timestamp: "2016-06-07T21:07:30.202183143Z"
  6756                    State: "shutdown"
  6757                    Message: "shutdown"
  6758                    ContainerStatus:
  6759                      ContainerID: "1cf8d63d18e79668b0004a4be4c6ee58cddfad2dae29506d8781581d0688a213"
  6760                  DesiredState: "shutdown"
  6761                  NetworksAttachments:
  6762                    - Network:
  6763                        ID: "4qvuz4ko70xaltuqbt8956gd1"
  6764                        Version:
  6765                          Index: 18
  6766                        CreatedAt: "2016-06-07T20:31:11.912919752Z"
  6767                        UpdatedAt: "2016-06-07T21:07:29.955277358Z"
  6768                        Spec:
  6769                          Name: "ingress"
  6770                          Labels:
  6771                            com.docker.swarm.internal: "true"
  6772                          DriverConfiguration: {}
  6773                          IPAMOptions:
  6774                            Driver: {}
  6775                            Configs:
  6776                              - Subnet: "10.255.0.0/16"
  6777                                Gateway: "10.255.0.1"
  6778                        DriverState:
  6779                          Name: "overlay"
  6780                          Options:
  6781                            com.docker.network.driver.overlay.vxlanid_list: "256"
  6782                        IPAMOptions:
  6783                          Driver:
  6784                            Name: "default"
  6785                          Configs:
  6786                            - Subnet: "10.255.0.0/16"
  6787                              Gateway: "10.255.0.1"
  6788                      Addresses:
  6789                        - "10.255.0.5/16"
  6790  
  6791          500:
  6792            description: "server error"
  6793            schema:
  6794              $ref: "#/definitions/Error"
  6795        parameters:
  6796          - name: "filters"
  6797            in: "query"
  6798            type: "string"
  6799            description: |
  6800              A JSON encoded value of the filters (a `map[string][]string`) to process on the tasks list. Available filters:
  6801  
  6802              - `id=<task id>`
  6803              - `name=<task name>`
  6804              - `service=<service name>`
  6805              - `node=<node id>`
  6806              - `label=key` or `label="key=value"`
  6807              - `desired-state=(running | shutdown | accepted)`
  6808        tags:
  6809          - "Tasks"
  6810    /tasks/{id}:
  6811      get:
  6812        summary: "Inspect a task"
  6813        operationId: "GetTasksInspect"
  6814        produces:
  6815          - "application/json"
  6816        responses:
  6817          200:
  6818            description: "no error"
  6819            schema:
  6820              $ref: "#/definitions/Task"
  6821          404:
  6822            description: "no such task"
  6823            schema:
  6824              $ref: "#/definitions/Error"
  6825          500:
  6826            description: "server error"
  6827            schema:
  6828              $ref: "#/definitions/Error"
  6829        parameters:
  6830          - name: "id"
  6831            in: "path"
  6832            description: "ID of the task"
  6833            required: true
  6834            type: "string"
  6835        tags:
  6836          - "Tasks"