openapi: 3.0.0 info: title: Docker Remote API description: The API for each docker installation. termsOfService: 'http://example.com/tos/' version: v1.21 paths: /containers/json: get: summary: List containers description: List containers operationId: findAllContainers parameters: - name: all in: query description: >- Show all containers. Only running containers are shown by default (i.e., this defaults to false) schema: type: boolean default: false - name: limit in: query description: 'Show last created containers, include non-running ones.' schema: type: integer - name: since in: query description: 'Show only containers created since Id, include non-running ones.' schema: type: string - name: before in: query description: 'Show only containers created before Id, include non-running ones.' schema: type: string - name: size in: query description: '1/True/true or 0/False/false, Show the containers sizes.' schema: type: boolean - name: filters in: query description: >- A JSON encoded value of the filters (a map[string][]string) to process on the containers list schema: type: array items: type: string responses: '200': description: no error content: application/json: schema: type: array items: $ref: '#/components/schemas/ContainerConfig' text/plain: schema: type: array items: $ref: '#/components/schemas/ContainerConfig' '400': description: bad parameter '500': description: server error tags: - Container /containers/create: post: summary: Create a container description: Create a container operationId: createContainer parameters: - name: name in: query description: >- Assign the specified name to the container. Must match /?[a-zA-Z0-9_-]+. schema: type: string pattern: '/?[a-zA-Z0-9_-]+' - name: Content-Type required: true in: header description: Content Type of input schema: type: string default: application/json responses: '201': description: no error content: application/json: schema: $ref: '#/components/schemas/ContainerCreateResult' text/plain: schema: $ref: '#/components/schemas/ContainerCreateResult' '404': description: no such container '406': description: impossible to attach '500': description: server error tags: - Container requestBody: content: application/json: schema: $ref: '#/components/schemas/ContainerConfig' text/plain: schema: $ref: '#/components/schemas/ContainerConfig' description: Container to create '/containers/{id}/json': get: summary: Inspect a container description: Return low-level information on the container id operationId: findContainer responses: '200': description: no error content: application/json: schema: $ref: '#/components/schemas/Container' text/plain: schema: $ref: '#/components/schemas/Container' '404': description: no such container '500': description: server error parameters: - name: id in: path required: true description: The container id or name schema: type: string tags: - Container '/containers/{id}/top': get: summary: List processes running inside a container description: List processes running inside the container id operationId: listProcesses responses: '200': description: no error content: application/json: schema: $ref: '#/components/schemas/ContainerTop' text/plain: schema: $ref: '#/components/schemas/ContainerTop' '404': description: no such container '500': description: server error parameters: - name: id in: path required: true description: The container id or name schema: type: string - name: ps_args in: query description: 'ps arguments to use (e.g., aux)' schema: type: string tags: - Container '/containers/{id}/logs': get: summary: Get container logs description: >- Get stdout and stderr logs from the container id. Note: This endpoint works only for containers with json-file logging driver. operationId: logs responses: '101': description: 'no error, hints proxy about hijacking' content: application/json: schema: type: string text/plain: schema: type: string '200': description: 'no error, no upgrade header found' content: application/json: schema: type: string text/plain: schema: type: string '404': description: no such container '500': description: server error parameters: - name: id in: path required: true description: The container id or name schema: type: string - name: follow in: query description: '1/True/true or 0/False/false, return stream. Default false.' schema: type: boolean default: false - name: stdout in: query description: '1/True/true or 0/False/false, show stdout log. Default false.' schema: type: boolean default: false - name: stderr in: query description: '1/True/true or 0/False/false, show stderr log. Default false.' schema: type: boolean default: false - name: since in: query description: >- UNIX timestamp (integer) to filter logs. Specifying a timestamp will only output log-entries since that timestamp. Default: 0 (unfiltered) schema: type: integer default: 0 - name: timestamps in: query description: '1/True/true or 0/False/false, print timestamps for every log line. ' schema: type: boolean default: false - name: tail in: query description: >- Output specified number of lines at the end of logs: all or . Default all. schema: type: string tags: - Container '/containers/{id}/changes': get: summary: Inspect changes on a container’s filesystem description: Inspect changes on a container’s filesystem operationId: changes responses: '200': description: no error content: application/json: schema: type: array items: $ref: '#/components/schemas/ContainerChange' text/plain: schema: type: array items: $ref: '#/components/schemas/ContainerChange' '404': description: no such container '500': description: server error parameters: - name: id in: path required: true description: The container id or name schema: type: string - name: kind in: query description: Kind of changes schema: type: integer enum: - 0 - 1 - 2 tags: - Container '/containers/{id}/export': get: summary: Export a container description: Export the contents of container id operationId: export responses: '200': description: no error content: application/json: schema: type: string text/plain: schema: type: string '404': description: no such container '500': description: server error parameters: - name: id in: path required: true description: The container id or name schema: type: string tags: - Container '/containers/{id}/stats': get: summary: Get container stats based on resource usage description: >- This endpoint returns a live stream of a container’s resource usage statistics. operationId: stats responses: '200': description: no error content: application/json: schema: type: object text/plain: schema: type: object '404': description: no such container '500': description: server error parameters: - name: id in: path required: true description: The container id or name schema: type: string - name: stream in: query description: Stream stats schema: type: boolean tags: - Container '/containers/{id}/resize': post: summary: Resize a container TTY description: >- Resize the TTY for container with id. The unit is number of characters. You must restart the container for the resize to take effect. operationId: resizeContainer responses: '200': description: no error '404': description: no such container '500': description: cannot resize container parameters: - name: id in: path required: true description: The container id or name schema: type: string - name: h in: query description: Height of the tty session schema: type: integer - name: w in: query description: Width of the tty session schema: type: integer tags: - Container '/containers/{id}/start': post: summary: Start a container description: Start the container id operationId: startContainer responses: '204': description: no error '304': description: container already started '404': description: no such container '500': description: server error parameters: - name: id in: path required: true description: The container id or name schema: type: string tags: - Container '/containers/{id}/stop': post: summary: Stop a container description: Stop the container id operationId: stop responses: '204': description: no error '304': description: container already stopped '404': description: no such container '500': description: server error parameters: - name: id in: path required: true description: The container id or name schema: type: string - name: t in: query description: number of seconds to wait before killing the container schema: type: integer tags: - Container '/containers/{id}/restart': post: summary: Restart a container description: Restart the container id operationId: restart responses: '204': description: no error '404': description: no such container '500': description: server error parameters: - name: id in: path required: true description: The container id or name schema: type: string - name: t in: query description: number of seconds to wait before killing the container schema: type: integer tags: - Container '/containers/{id}/kill': post: summary: Kill a container description: Send a posix signal to a container operationId: kill responses: '204': description: no error '404': description: no such container '500': description: server error parameters: - name: id in: path required: true description: The container id or name schema: type: string - name: signal in: query description: >- Signal to send to the container, integer or string like SIGINT, defaults to SIGKILL schema: type: string tags: - Container '/containers/{id}/rename': post: summary: Rename a container description: Rename the container id to a new_name operationId: rename responses: '204': description: no error '404': description: no such container '409': description: 'conflict, name already assigned' '500': description: server error parameters: - name: id in: path required: true description: The container id or name schema: type: string - name: name in: query required: true description: New name for the container schema: type: string tags: - Container '/containers/{id}/pause': post: summary: Pause a container description: Pause the container id operationId: pause responses: '204': description: no error '404': description: no such container '500': description: server error parameters: - name: id in: path required: true description: The container id or name schema: type: string tags: - Container '/containers/{id}/unpause': post: summary: Unpause a container description: Unpause the container id operationId: unpause responses: '204': description: no error '404': description: no such container '500': description: server error parameters: - name: id in: path required: true description: The container id or name schema: type: string tags: - Container '/containers/{id}/attach': post: summary: Attach to a container description: Attach to the container id operationId: attach responses: '200': description: no error '400': description: bad parameter '404': description: no such container '500': description: server error parameters: - name: id in: path required: true description: The container id or name schema: type: string - name: logs in: query description: '1/True/true or 0/False/false, return logs. Default false' schema: type: string - name: stream in: query description: '1/True/true or 0/False/false, return stream. Default false' schema: type: string - name: stdin in: query description: >- 1/True/true or 0/False/false, if stream=true, attach to stdin. Default false. schema: type: string - name: stdout in: query description: >- 1/True/true or 0/False/false, if logs=true, return stdout log, if stream=true, attach to stdout. Default false. schema: type: string - name: stderr in: query description: >- 1/True/true or 0/False/false, if logs=true, return stderr log, if stream=true, attach to stderr. Default false. schema: type: string tags: - Container '/containers/{id}/attach/ws': get: summary: Attach to a container (websocket) description: Attach to the container id with a websocket. operationId: attachWebsocket responses: '101': description: 'no error, hints proxy about hijacking' '200': description: 'no error, no upgrade header found' '400': description: bad parameter '404': description: no such container '500': description: server error parameters: - name: id in: path required: true description: The container id or name schema: type: string - name: logs in: query description: '1/True/true or 0/False/false, return logs. Default false' schema: type: string - name: stream in: query description: '1/True/true or 0/False/false, return stream. Default false' schema: type: string - name: stdin in: query description: >- 1/True/true or 0/False/false, if stream=true, attach to stdin. Default false. schema: type: string - name: stdout in: query description: >- 1/True/true or 0/False/false, if logs=true, return stdout log, if stream=true, attach to stdout. Default false. schema: type: string - name: stderr in: query description: >- 1/True/true or 0/False/false, if logs=true, return stderr log, if stream=true, attach to stderr. Default false. schema: type: string tags: - Container '/containers/{id}/wait': post: summary: Wait a container description: 'Block until container id stops, then returns the exit code' operationId: wait responses: '200': description: no error content: application/json: schema: $ref: '#/components/schemas/ContainerWait' text/plain: schema: $ref: '#/components/schemas/ContainerWait' '404': description: no such container '500': description: server error parameters: - name: id in: path required: true description: The container id or name schema: type: string tags: - Container '/containers/{id}': delete: summary: Remove a container description: Remove the container id from the filesystem operationId: removeContainer responses: '204': description: no error '400': description: bad parameter '404': description: no such container '500': description: server error parameters: - name: id in: path required: true description: The container id or name schema: type: string - name: v in: query description: >- 1/True/true or 0/False/false, Remove the volumes associated to the container. Default false. schema: type: string - name: force in: query description: >- 1/True/true or 0/False/false, Kill then remove the container. Default false. schema: type: string tags: - Container '/containers/{id}/archive': head: summary: Retrieving information about files and folders in a container description: Retrieving information about files and folders in a container operationId: getArchiveInformation responses: '204': description: no error '404': description: no such container '500': description: server error parameters: - name: id in: path required: true description: The container id or name schema: type: string - name: path in: query required: true description: Resource in the container’s filesystem to archive. schema: type: string tags: - Container get: summary: Get an archive of a filesystem resource in a container description: Get an tar archive of a resource in the filesystem of container id. operationId: getArchive responses: '200': description: no error '400': 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) '404': description: no such container or path does not exist inside the container '500': description: server error parameters: - name: id in: path required: true description: The container id or name schema: type: string - name: path in: query required: true description: Resource in the container’s filesystem to archive. schema: type: string tags: - Container put: summary: Extract an archive of files or folders to a directory in a container description: >- Upload a tar archive to be extracted to a path in the filesystem of container id. operationId: putArchive responses: '200': description: The content was extracted successfully '400': description: Bad parameter '403': description: >- Permission denied, the volume or container rootfs is marked as read-only. '404': description: No such container or path does not exist inside the container '500': description: Server error parameters: - name: id in: path required: true description: The container id or name schema: type: string - name: path in: query required: true description: >- Path to a directory in the container to extract the archive’s contents into. schema: type: string - name: noOverwriteDirNonDir in: query 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. schema: type: string tags: - Container requestBody: content: application/json: schema: type: string text/plain: schema: type: string description: >- The input stream must be a tar archive compressed with one of the following algorithms: identity (no compression), gzip, bzip2, xz. required: true /images/json: get: summary: List Images description: List Images operationId: findAllImages responses: '200': description: no error content: application/json: schema: type: array items: $ref: '#/components/schemas/ImageItem' text/plain: schema: type: array items: $ref: '#/components/schemas/ImageItem' '500': description: server error parameters: - name: all in: query description: >- Show all images. Only images from a final layer (no children) are shown by default. schema: type: boolean default: false - name: filters in: query description: >- A JSON encoded value of the filters (a map[string][]string) to process on the containers list schema: type: string - name: filter in: query description: Only return images with the specified name. schema: type: string - name: digests in: query description: 'Show digest information, default to false' schema: type: boolean tags: - Image /build: post: summary: Build an image from Dockerfile via stdin description: Build an image from Dockerfile via stdin operationId: build parameters: - name: dockerfile in: query description: >- Path within the build context to the Dockerfile. This is ignored if remote is specified and points to an individual filename. schema: type: string - name: t in: query description: >- A repository name (and optionally a tag) to apply to the resulting image in case of success. schema: type: string - name: remote in: query description: >- A Git repository URI or HTTP/HTTPS URI build source. If the URI specifies a filename, the file’s contents are placed into a file called Dockerfile. schema: type: string - name: q in: query description: Suppress verbose build output. schema: type: boolean default: false - name: nocache in: query description: Do not use the cache when building the image. schema: type: boolean default: false - name: pull in: query description: Attempt to pull the image even if an older image exists locally schema: type: string - name: rm in: query description: >- Remove intermediate containers after a successful build (default behavior). schema: type: boolean default: true - name: forcerm in: query description: always remove intermediate containers (includes rm) schema: type: boolean default: false - name: memory in: query description: Set memory limit for build. schema: type: integer - name: memswap in: query description: 'Total memory (memory + swap), -1 to disable swap.' schema: type: integer - name: cpushares in: query description: CPU shares (relative weight). schema: type: integer - name: cpusetcpus in: query description: 'CPUs in which to allow execution (e.g., 0-3, 0,1).' schema: type: string - name: cpuperiod in: query description: The length of a CPU period in microseconds. schema: type: integer - name: cpuquota in: query description: Microseconds of CPU time that the container can get in a CPU period. schema: type: integer - name: buildargs in: query description: 'Total memory (memory + swap), -1 to disable swap.' schema: type: integer - name: Content-type in: header description: ' Set to ''application/tar''.' schema: type: string enum: - application/tar default: application/tar - name: X-Registry-Config in: header description: A base64-url-safe-encoded Registry Auth Config JSON object schema: type: string responses: '200': description: no error '500': description: server error tags: - Image requestBody: content: application/json: schema: type: string text/plain: schema: type: string description: >- The input stream must be a tar archive compressed with one of the following algorithms: identity (no compression), gzip, bzip2, xz. /images/create: post: summary: Create an image description: >- Create an image either by pulling it from the registry or by importing it operationId: createImage responses: '200': description: no error '500': description: server error parameters: - name: fromImage in: query 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. schema: type: string - name: fromSrc in: query 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. schema: type: string - name: repo in: query 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. schema: type: string - name: tag in: query description: Tag or digest. schema: type: string - name: X-Registry-Config in: header description: A base64-encoded AuthConfig object schema: type: string tags: - Image requestBody: content: application/octet-stream: schema: type: string format: binary description: >- Image content if the value - has been specified in fromSrc query parameter '/images/{name}/json': get: summary: Inspect an image description: Return low-level information on the image name operationId: findImage responses: '200': description: No error content: application/json: schema: $ref: '#/components/schemas/Image' text/plain: schema: $ref: '#/components/schemas/Image' '404': description: No such image '500': description: Server error parameters: - name: name in: path description: Image name or id required: true schema: type: string tags: - Image '/images/{name}/history': get: summary: Get the history of an image description: Return the history of the image name operationId: history responses: '200': description: No error content: application/json: schema: type: array items: $ref: '#/components/schemas/ImageHistoryItem' text/plain: schema: type: array items: $ref: '#/components/schemas/ImageHistoryItem' '404': description: No such image '500': description: Server error parameters: - name: name in: path description: Image name or id required: true schema: type: string tags: - Image '/images/{name}/push': post: summary: Push an image to the registry description: Push the image name on the registry operationId: push responses: '200': description: No error '404': description: No such image '500': description: Server error parameters: - name: name in: path description: Image name or id required: true schema: type: string - name: tag in: query description: The tag to associate with the image on the registry. schema: type: string - name: X-Registry-Auth in: header description: A base64-encoded AuthConfig object required: true schema: type: string tags: - Image '/images/{name}/tag': post: summary: Tag an image into a repository description: Tag the image name into a repository operationId: tag responses: '201': description: No error '400': description: Bad parameter '404': description: No such image '409': description: Conflict '500': description: Server error parameters: - name: name in: path description: Image name or id required: true schema: type: string - name: repo in: query description: The repository to tag in. schema: type: string - name: force in: query description: '1/True/true or 0/False/false, default false' schema: type: string - name: tag in: query description: The new tag name. schema: type: string tags: - Image '/images/{name}': delete: summary: Remove an image description: Remove the image name from the filesystem operationId: removeImage responses: '200': description: No error '404': description: No such image '409': description: Conflict '500': description: Server error parameters: - name: name in: path description: Image name or id required: true schema: type: string - name: force in: query description: '1/True/true or 0/False/false, default false' schema: type: string - name: noprune in: query description: '1/True/true or 0/False/false, default false.' schema: type: string tags: - Image /images/search: get: summary: Search images description: Search for an image on Docker Hub. operationId: search responses: '200': description: No error content: application/json: schema: type: array items: $ref: '#/components/schemas/ImageSearchResult' text/plain: schema: type: array items: $ref: '#/components/schemas/ImageSearchResult' '500': description: Server error parameters: - name: term in: query description: Term to search schema: type: string tags: - Image /auth: post: summary: Check auth configuration description: Check auth configuration. operationId: checkAuthentication responses: '200': description: No error '204': description: No error '500': description: Server error tags: - Misc requestBody: content: application/json: schema: $ref: '#/components/schemas/AuthConfig' text/plain: schema: $ref: '#/components/schemas/AuthConfig' description: Authentication to check /info: get: summary: Display system-wide information description: Display system-wide information. operationId: getSystemInformation responses: '200': description: No error content: application/json: schema: $ref: '#/components/schemas/SystemInformation' text/plain: schema: $ref: '#/components/schemas/SystemInformation' '500': description: Server error tags: - Misc /version: get: summary: Show the docker version information description: Show the docker version information operationId: getVersion responses: '200': description: no error content: application/json: schema: $ref: '#/components/schemas/Version' text/plain: schema: $ref: '#/components/schemas/Version' '500': description: server error tags: - Misc /_ping: get: summary: Ping the docker server description: Ping the docker server operationId: ping responses: '200': description: no error content: text/plain: schema: type: string '500': description: server error tags: - Misc /commit: post: summary: Create a new image from a container’s changes description: Create a new image from a container’s changes operationId: commit responses: '201': description: no error content: application/json: schema: $ref: '#/components/schemas/CommitResult' text/plain: schema: $ref: '#/components/schemas/CommitResult' '500': description: server error parameters: - name: container in: query description: Container id or name to commit schema: type: string - name: repo in: query description: Repository name for the created image schema: type: string - name: tag in: query description: Tag name for the create image schema: type: string - name: comment in: query description: Commit message schema: type: string - name: author in: query description: 'author (e.g., “John Hannibal Smith “)' schema: type: string - name: pause in: query description: >- 1/True/true or 0/False/false, whether to pause the container before committing schema: type: string - name: changes in: query description: Dockerfile instructions to apply while committing schema: type: string tags: - Image requestBody: content: application/json: schema: $ref: '#/components/schemas/ContainerConfig' text/plain: schema: $ref: '#/components/schemas/ContainerConfig' description: The container configuration /events: get: summary: Monitor Docker’s events description: >- Get container events from docker, either in real time via streaming, or via polling (using since). operationId: getEvents responses: '200': description: no error '500': description: server error parameters: - name: since in: query description: Timestamp used for polling schema: type: integer - name: until in: query description: Timestamp used for polling schema: type: integer - name: filters in: query description: >- A json encoded value of the filters (a map[string][]string) to process on the event list. schema: type: string tags: - Misc '/images/{name}/get': get: summary: Get a tarball containing all images in a repository description: >- Get a tarball containing all images and metadata for the repository specified by name. operationId: save responses: '200': description: no error content: application/json: schema: type: string text/plain: schema: type: string '500': description: server error parameters: - name: name in: path description: Image name or id required: true schema: type: string tags: - Image /images/get: get: summary: Get a tarball containing all images. description: >- Get a tarball containing all images and metadata for one or more repositories. operationId: saveAll responses: '200': description: no error content: application/json: schema: type: string text/plain: schema: type: string '500': description: server error parameters: - name: names in: query description: Image names to filter schema: type: array items: type: string tags: - Image /images/load: post: summary: Load a tarball with a set of images and tags into docker. description: >- Load a set of images and tags into a Docker repository. See the image tarball format for more details. operationId: load responses: '200': description: no error '500': description: server error tags: - Image requestBody: content: application/json: schema: type: string text/plain: schema: type: string description: Tar archive containing images '/containers/{id}/exec': post: summary: Exec Create description: Sets up an exec instance in a running container id operationId: createExec responses: '201': description: no error content: application/json: schema: $ref: '#/components/schemas/ExecCreateResult' text/plain: schema: $ref: '#/components/schemas/ExecCreateResult' '404': description: no such container '500': description: Server error parameters: - name: Content-Type in: header description: Content Type Header required: true schema: type: string default: application/json - name: id in: path description: Container name or id required: true schema: type: string tags: - Exec requestBody: content: application/json: schema: $ref: '#/components/schemas/ExecConfig' text/plain: schema: $ref: '#/components/schemas/ExecConfig' description: Exec configuration required: true '/exec/{id}/start': post: summary: Exec Start description: >- Starts a previously set up exec instance id. If detach is true, this API returns after starting the exec command. Otherwise, this API sets up an interactive session with the exec command. operationId: startExec responses: '200': description: No error '404': description: No such exec instance '409': description: Container is stopped or paused '500': description: Server error parameters: - name: Content-Type in: header description: Content Type Header required: true schema: type: string default: application/json - name: id in: path description: Exec instance id required: true schema: type: string tags: - Exec requestBody: content: application/json: schema: $ref: '#/components/schemas/ExecStartConfig' text/plain: schema: $ref: '#/components/schemas/ExecStartConfig' description: Exec configuration '/exec/{id}/resize': post: summary: Exec Resize description: Resize the tty session used by the exec command id. operationId: resizeTty responses: '201': description: No error '404': description: No such exec instance '500': description: Server error parameters: - name: id in: path description: Exec instance id required: true schema: type: string - name: h in: query description: Height of the tty session schema: type: integer format: int64 - name: w in: query description: Width of the tty session schema: type: integer format: int64 tags: - Exec '/exec/{id}/json': post: summary: Exec Inspect description: Return low-level information about the exec command id. operationId: findExec responses: '200': description: No error content: application/json: schema: $ref: '#/components/schemas/ExecCommand' text/plain: schema: $ref: '#/components/schemas/ExecCommand' '404': description: No such exec instance '500': description: Server error parameters: - name: id in: path description: Exec instance id required: true schema: type: string tags: - Exec /volumes: get: summary: List volumes description: List volumes. operationId: findAllVolumes responses: '200': description: No error content: application/json: schema: $ref: '#/components/schemas/VolumeList' text/plain: schema: $ref: '#/components/schemas/VolumeList' '500': description: Server error parameters: - name: filters in: query description: >- JSON encoded value of the filters (a map[string][]string) to process on the volumes list schema: type: string tags: - Volume /volumes/create: post: summary: Create a volume description: Create a volume. operationId: createVolume responses: '201': description: No error content: application/json: schema: $ref: '#/components/schemas/Volume' text/plain: schema: $ref: '#/components/schemas/Volume' '500': description: Server error tags: - Volume requestBody: content: application/json: schema: $ref: '#/components/schemas/VolumeConfig' text/plain: schema: $ref: '#/components/schemas/VolumeConfig' description: Volume configuration required: true '/volumes/{name}': get: summary: Inspect a volume description: Inspect a volume. operationId: findVolume responses: '200': description: No error content: application/json: schema: $ref: '#/components/schemas/Volume' text/plain: schema: $ref: '#/components/schemas/Volume' '404': description: No such volume '500': description: Server error parameters: - name: name in: path required: true description: Volume name or id schema: type: string tags: - Volume delete: summary: Remove a volume description: Instruct the driver to remove the volume. operationId: removeVolume responses: '204': description: No error '404': description: No such volume or volume driver '409': description: Volume is in use and cannot be removed '500': description: Server error parameters: - name: name in: path required: true description: Volume name or id schema: type: string tags: - Volume /networks: get: summary: List networks description: List networks. operationId: findAllNetworks responses: '200': description: No error content: application/json: schema: type: array items: $ref: '#/components/schemas/Network' text/plain: schema: type: array items: $ref: '#/components/schemas/Network' '500': description: Server error parameters: - name: filters in: query description: >- JSON encoded value of the filters (a map[string][]string) to process on the networks list. schema: type: string tags: - Network '/networks/{id}': get: summary: Inspect network description: Inspect network. operationId: findNetwork responses: '200': description: No error content: application/json: schema: $ref: '#/components/schemas/Network' text/plain: schema: $ref: '#/components/schemas/Network' '404': description: Network not found '500': description: Server error parameters: - name: id in: path description: Network id or name required: true schema: type: string tags: - Network delete: summary: Remove a network description: Remove a network operationId: removeNetwork responses: '204': description: No error '404': description: Network not found '500': description: Server error parameters: - name: id in: path description: Network id or name required: true schema: type: string tags: - Network /networks/create: post: summary: Create network description: Create network. operationId: createNetwork responses: '201': description: No error content: application/json: schema: $ref: '#/components/schemas/NetworkCreateResult' text/plain: schema: $ref: '#/components/schemas/NetworkCreateResult' '404': description: Driver not found '500': description: Server error tags: - Network requestBody: content: application/json: schema: $ref: '#/components/schemas/NetworkCreateConfig' text/plain: schema: $ref: '#/components/schemas/NetworkCreateConfig' description: Network configuration required: true '/networks/{id}/connect': post: summary: Connect a container to a network description: Connect a container to a network. operationId: connect responses: '201': description: No error '404': description: Network or container not found '500': description: Server error parameters: - name: id in: path description: Network id or name required: true schema: type: string tags: - Network requestBody: $ref: '#/components/requestBodies/ContainerConnect' '/networks/{id}/disconnect': post: summary: Disconnect a container to a network description: Disconnect a container to a network. operationId: disconnect responses: '201': description: No error '404': description: Network or container not found '500': description: Server error parameters: - name: id in: path description: Network id or name required: true schema: type: string tags: - Network requestBody: $ref: '#/components/requestBodies/ContainerConnect' servers: - url: 'http://localhost/v1.21' - url: 'https://localhost/v1.21' components: requestBodies: ContainerConnect: content: application/json: schema: $ref: '#/components/schemas/ContainerConnect' text/plain: schema: $ref: '#/components/schemas/ContainerConnect' description: Container required: true schemas: Version: type: object properties: Version: type: string Os: type: string KernelVersion: type: string GoVersion: type: string GitCommit: type: string Arch: type: string ApiVersion: type: string Experimental: type: boolean port: type: object properties: PrivatePort: type: integer PublicPort: type: integer Type: type: string mount: type: object properties: Source: type: string Destination: type: string Mode: type: string RW: type: boolean LogConfig: type: object properties: Type: type: string Config: type: object additionalProperties: type: string Ulimit: type: object properties: Name: type: string Soft: type: integer Hard: type: integer Device: type: object properties: PathOnHost: type: string PathInContainer: type: string CgroupPermissions: type: string RestartPolicy: type: object properties: Name: type: string enum: - always - on-failure MaximumRetryCount: type: integer default: {} PortBinding: type: object properties: HostPort: type: string HostConfig: type: object properties: Binds: type: array items: type: string Links: type: array items: type: string LxcConf: type: object additionalProperties: type: string Memory: type: integer default: 0 MemorySwap: type: integer default: 0 CpuShares: type: integer CpuPeriod: type: integer CpusetCpus: type: string CpusetMems: type: string BlkioWeight: type: integer MemorySwappiness: type: integer OomKillDisable: type: boolean PortBindings: type: object additionalProperties: $ref: '#/components/schemas/PortBinding' PublishAllPorts: type: boolean Privileged: type: boolean ReadonlyRootfs: type: boolean Dns: type: array items: type: string DnsSearch: type: array items: type: string ExtraHosts: type: array items: type: string VolumesFrom: type: array items: type: string CapAdd: type: array items: type: string CapDrop: type: array items: type: string RestartPolicy: $ref: '#/components/schemas/RestartPolicy' NetworkMode: type: string Devices: type: array items: $ref: '#/components/schemas/Device' Ulimits: type: array items: $ref: '#/components/schemas/Ulimit' SecurityOpt: type: array items: type: string LogConfig: $ref: '#/components/schemas/LogConfig' CgroupParent: type: string ContainerConfig: type: object properties: Id: type: string Names: type: array items: type: string Image: type: string Command: type: string Created: type: integer Status: type: string Ports: type: array items: $ref: '#/components/schemas/port' Labels: type: object additionalProperties: type: string SizeRw: type: integer SizeRootFs: type: integer Hostname: type: integer Domainname: type: integer User: type: integer AttachStdin: type: boolean default: false AttachStdout: type: boolean default: true AttachStderr: type: boolean default: true Tty: type: boolean default: false OpenStdin: type: boolean default: false StdinOnce: type: boolean default: false Env: type: array items: type: string # Cmd: # items: # type: string # oneOf: # - type: array # items: {} # - type: string # Entrypoint: # items: # type: string # oneOf: # - type: array # items: {} # - type: string Mounts: type: array items: $ref: '#/components/schemas/mount' WorkingDir: type: string NetworkDisabled: type: boolean MacAddress: type: string ExposedPorts: type: object additionalProperties: type: object enum: - {} default: {} HostConfig: $ref: '#/components/schemas/HostConfig' NetworkConfig: type: object properties: Bridge: type: string Gateway: type: string IPAddress: type: string IPPrefixLen: type: integer MacAddress: type: string PortMapping: type: string Ports: type: array items: $ref: '#/components/schemas/port' ContainerState: type: object properties: Error: type: string ExitCode: type: integer FinishedAt: type: string OOMKilled: type: boolean Paused: type: boolean Pid: type: integer Restarting: type: boolean Running: type: boolean StartedAt: type: string Container: type: object properties: AppArmorProfile: type: string Args: type: array items: type: string Config: $ref: '#/components/schemas/ContainerConfig' Created: type: string Driver: type: string ExecDriver: type: string ExecIDs: type: string HostConfig: $ref: '#/components/schemas/HostConfig' HostnamePath: type: string HostsPath: type: string LogPath: type: string Id: type: string Image: type: string MountLabel: type: string Name: type: string NetworkSettings: $ref: '#/components/schemas/NetworkConfig' Path: type: string ProcessLabel: type: string ResolvConfPath: type: string RestartCount: type: integer State: $ref: '#/components/schemas/ContainerState' Mounts: type: array items: $ref: '#/components/schemas/mount' ContainerTop: type: object properties: Titles: type: array items: type: string Processes: type: array items: type: array items: type: string ContainerChange: type: object properties: Path: type: string Kind: type: integer ContainerWait: type: object properties: StatusCode: type: integer GraphDriver: type: object properties: Name: type: string Data: type: object ImageItem: type: object properties: RepoTags: type: array items: type: string Id: type: string ParentId: type: string Created: type: integer Size: type: integer VirtualSize: type: integer Labels: type: object additionalProperties: type: string RepoDigests: type: array items: type: string Image: type: object properties: Id: type: string Container: type: string Comment: type: string Os: type: string Architecture: type: string Parent: type: string ContainerConfig: $ref: '#/components/schemas/ContainerConfig' DockerVersion: type: string VirtualSize: type: integer Size: type: integer Author: type: string Created: type: string GraphDriver: $ref: '#/components/schemas/GraphDriver' RepoDigests: type: array items: type: string RepoTags: type: array items: type: string Config: $ref: '#/components/schemas/ContainerConfig' ImageHistoryItem: type: object properties: Id: type: string Created: type: integer CreatedBy: type: string Tags: type: array items: type: string Size: type: integer Comment: type: string ImageSearchResult: type: object properties: description: type: string is_official: type: boolean is_automated: type: boolean name: type: string star_count: type: integer AuthConfig: type: object properties: username: type: string password: type: string email: type: string serveraddress: type: string SystemInformation: type: object properties: Containers: type: integer CpuCfsPeriod: type: boolean CpuCfsQuota: type: boolean Debug: type: boolean DiscoveryBackend: type: string DockerRootDir: type: string Driver: type: string DriverStatus: type: array items: type: array items: type: string ExecutionDriver: type: string ExperimentalBuild: type: boolean HttpProxy: type: string HttpsProxy: type: string ID: type: string IPv4Forwarding: type: boolean Images: type: integer IndexServerAddress: type: string InitPath: type: string InitSha1: type: string KernelVersion: type: string Labels: type: array items: type: string MemTotal: type: integer MemoryLimit: type: boolean NCPU: type: integer NEventsListener: type: integer NFd: type: integer NGoroutines: type: integer Name: type: string NoProxy: type: string OomKillDisable: type: boolean OperatingSystem: type: string RegistryConfig: $ref: '#/components/schemas/RegistryConfig' SwapLimit: type: boolean SystemTime: type: string ServerVersion: type: string RegistryConfig: type: object properties: IndexConfigs: type: object additionalProperties: $ref: '#/components/schemas/Registry' InsecureRegistryCIDRs: type: array items: type: string Registry: type: object properties: Mirrors: type: array items: type: string Name: type: string Official: type: boolean Secure: type: boolean CommitResult: type: object properties: Id: type: string ExecCreateResult: type: object properties: Id: type: string Warnings: type: array items: type: string ExecConfig: type: object properties: AttachStdin: type: boolean AttachStdout: type: boolean AttachStderr: type: boolean Tty: type: boolean Cmd: type: array items: type: string ExecStartConfig: type: object properties: Detach: type: boolean Tty: type: boolean ExecCommand: type: object properties: ID: type: string Running: type: boolean ExitCode: type: integer ProcessConfig: $ref: '#/components/schemas/ProcessConfig' OpenStdin: type: boolean OpenStderr: type: boolean OpenStdout: type: boolean Container: $ref: '#/components/schemas/Container' ProcessConfig: type: object properties: privileged: type: boolean user: type: string tty: type: boolean entrypoint: type: string arguments: type: array items: type: string VolumeList: type: object properties: Volumes: type: array items: $ref: '#/components/schemas/Volume' Volume: type: object properties: Name: type: string Driver: type: string Mountpoint: type: string VolumeConfig: type: object properties: Name: type: string Driver: type: string DriverOpts: type: object additionalProperties: type: string Network: type: object properties: Name: type: string Id: type: string Scope: type: string Driver: type: string IPAM: $ref: '#/components/schemas/IPAM' Containers: type: object additionalProperties: $ref: '#/components/schemas/NetworkContainer' Options: type: object additionalProperties: type: string IPAM: type: object properties: Driver: type: string Config: type: array items: type: object additionalProperties: type: string NetworkContainer: type: object properties: EndpointID: type: string MacAddress: type: string IPv4Address: type: string IPv6Address: type: string NetworkCreateResult: type: object properties: Id: type: string Warning: type: string NetworkCreateConfig: type: object properties: Name: type: string Driver: type: string IPAM: $ref: '#/components/schemas/IPAM' ContainerConnect: type: object properties: Container: type: string ContainerCreateResult: type: object properties: Id: type: string Warnings: type: array items: type: string BuildInfo: type: object properties: id: type: string stream: type: string error: type: string errorDetail: $ref: '#/components/schemas/ErrorDetail' status: type: string progress: type: string progressDetail: $ref: '#/components/schemas/ProgressDetail' CreateImageInfo: type: object properties: error: type: string status: type: string progress: type: string progressDetail: $ref: '#/components/schemas/ProgressDetail' PushImageInfo: type: object properties: error: type: string status: type: string progress: type: string progressDetail: $ref: '#/components/schemas/ProgressDetail' ErrorDetail: type: object properties: code: type: integer message: type: string ProgressDetail: type: object properties: code: type: integer message: type: integer Event: type: object properties: status: type: string id: type: string from: type: string time: type: integer timeNano: type: integer