Module: Docker::API

Defined in:
lib/dockerapi.rb,
lib/docker/api/error.rb,
lib/docker/api/version.rb

Defined Under Namespace

Classes: Base, Config, Connection, Container, Error, Exec, Image, InvalidParameter, InvalidRequestBody, Network, Node, Plugin, Response, Secret, Service, Swarm, System, Task, ValidationError, Volume

Constant Summary collapse

true
false
VALID_PARAMS =

Valid values for parameter validations.

{
  "Docker::API::Image" => {
    "build" => [:dockerfile, :t, :extrahosts, :remote, :q, :nocache, :cachefrom, :pull, :rm, :forcerm, :memory, :memswap, :cpushares, :cpusetcpus, :cpuperiod, :cpuquota, :buildargs, :shmsize, :squash, :labels, :networkmode, :platform, :target, :outputs],
    "prune" => [:filters],
    "list" => [:all, :filters, "shared-size", :digests],
    "search" => [:term, :limit, :filters],
    "tag" => [:repo, :tag],
    "remove" => [:force, :noprune],
    "import" => [:quiet],
    "push" => [:tag],
    "commit" => [:container, :repo, :tag, :comment, :author, :pause, :changes],
    "create" => [:fromImage, :fromSrc, :repo, :tag, :message, :changes, :platform],
    "delete_cache" => [:all, "keep-storage", :filters]
  },
  "Docker::API::Container" => {
    "list" => [:all, :limit, :size, :filters],
    "details" => [:size],
    "top" => [:ps_args],
    "start" => [:detachKeys],
    "stop" => [:signal, :t],
    "restart" => [:signal, :t],
    "kill" => [:signal],
    "wait" => [:condition],
    "rename" => [:name],
    "resize" => [:w, :h],
    "prune" => [:filters],
    "remove" => [:v, :force, :link],
    "logs" => [:follow, :stdout, :stderr, :since, :until, :timestamps, :tail],
    "attach" => [:detachKeys, :logs, :stream, :stdin, :stdout, :stderr],
    "stats" => [:stream, "one-shot"],
    "get_archive" => [:path],
    "put_archive" => [:path, :noOverwriteDirNonDir, :copyUIDGID],
    "create" => [:name, :platform]
  },
  "Docker::API::Volume" => {
    "list" => [:filters],
    "remove" => [:force],
    "prune" => [:filters]
  },
  "Docker::API::Network" => {
    "list" => [:filters],
    "details" => [:verbose, :scope],
    "prune" => [:filters]
  },
  "Docker::API::System" => {
    "events" => [:since, :until, :filters],
    "df" => [:type]
  },
  "Docker::API::Exec" => {
    "resize" => [:w, :h]
  },
  "Docker::API::Swarm" => {
    "leave" => [:force],
    "update" => [:version, :rotateWorkerToken, :rotateManagerToken, :rotateManagerUnlockKey]
  },
  "Docker::API::Node" => {
    "list" => [:filters],
    "update" => [:version],
    "delete" => [:force]
  },
  "Docker::API::Service" => {
    "list" => [:filters, :status],
    "update" => [:version, :registryAuthFrom, :rollback],
    "details" => [:insertDefaults],
    "logs" => [:details, :follow, :stdout, :stderr, :since, :timestamps, :tail]
  },
  "Docker::API::Secret" => {
    "list" => [:filters],
    "update" => [:version]
  },
  "Docker::API::Task" => {
    "list" => [:filters],
    "logs" => [:details, :follow, :stdout, :stderr, :since, :timestamps, :tail]
  },
  "Docker::API::Plugin" => {
    "list" => [:filters],
    "privileges" => [:remote],
    "install" => [:remote, :name],
    "remove" => [:force],
    "enable" => [:timeout],
    "upgrade" => [:remote]
  },
  "Docker::API::Config" => {
    "list" => [:filters],
    "update" => [:version]
  }
}
VALID_BODY =

Valid values for request body validations.

{
  "Docker::API::Image" => {
    "commit" => [:Hostname, :Domainname, :User, :AttachStdin, :AttachStdout, :AttachStderr, :ExposedPorts, :Tty, :OpenStdin, :StdinOnce, :Env, :Cmd, :HealthCheck, :ArgsEscaped, :Image, :Volumes, :WorkingDir, :Entrypoint, :NetworkDisabled, :MacAddress, :OnBuild, :Labels, :StopSignal, :StopTimeout, :Shell]
  },
  "Docker::API::Container" => {
    "create" => [:Hostname,:Domainname,:User,:AttachStdin,:AttachStdout,:AttachStderr,:ExposedPorts,:Tty,:OpenStdin,:StdinOnce,:Env,:Cmd,:HealthCheck,:ArgsEscaped,:Image,:Volumes,:WorkingDir,:Entrypoint,:NetworkDisabled,:MacAddress,:OnBuild,:Labels,:StopSignal,:StopTimeout,:Shell,:HostConfig,:NetworkingConfig],
    "update" => [:CpuShares, :Memory, :CgroupParent, :BlkioWeight, :BlkioWeightDevice, :BlkioDeviceReadBps, :BlkioDeviceWriteBps, :BlkioDeviceReadIOps, :BlkioDeviceWriteIOps, :CpuPeriod, :CpuQuota, :CpuRealtimePeriod, :CpuRealtimeRuntime, :CpusetCpus, :CpusetMems, :Devices, :DeviceCgroupRules, :DeviceRequest, :Memory, :KernelMemoryTCP, :MemoryReservation, :MemorySwap, :MemorySwappiness, :NanoCPUs, :OomKillDisable, :Init, :PidsLimit, :ULimits, :CpuCount, :CpuPercent, :IOMaximumIOps, :IOMaximumBandwidth, :RestartPolicy]
  },
  "Docker::API::Volume" => {
    "create" => [:Name, :Driver, :DriverOpts, :Labels, :ClusterVolumeSpec]
  },
  "Docker::API::Network" => {
    "create" => [:Name, :CheckDuplicate, :Driver, :Internal, :Attachable, :Ingress, :IPAM, :EnableIPv6, :Options, :Labels],
    "connect" => [:Container, :EndpointConfig],
    "disconnect" => [:Container, :Force]
  },
  "Docker::API::System" => {
    "auth" => [:username, :password, :email, :serveraddress, :identitytoken]
  },
  "Docker::API::Exec" => {
    "create" => [:AttachStdin, :AttachStdout, :AttachStderr, :ConsoleSize, :DetachKeys, :Tty, :Env, :Cmd, :Privileged, :User, :WorkingDir],
    "start" => [:Detach, :Tty, :ConsoleSize]
  },
  "Docker::API::Swarm" => {
    "init" => [:ListenAddr, :AdvertiseAddr, :DataPathAddr, :DataPathPort, :DefaultAddrPool, :ForceNewCluster, :SubnetSize, :Spec],
    "update" => [:Name, :Labels, :Orchestration, :Raft, :Dispatcher, :CAConfig, :EncryptionConfig, :TaskDefaults],
    "unlock" => [:UnlockKey],
    "join" => [:ListenAddr, :AdvertiseAddr, :DataPathAddr, :RemoteAddrs, :JoinToken]
  },
  "Docker::API::Node" => {
    "update" => [:Name, :Labels, :Role, :Availability]
  },
  "Docker::API::Service" => {
    "create" => [:Name, :Labels, :TaskTemplate, :Mode, :UpdateConfig, :RollbackConfig, :Networks, :EndpointSpec],
    "update" => [:Name, :Labels, :TaskTemplate, :Mode, :UpdateConfig, :RollbackConfig, :Networks, :EndpointSpec]
  },
  "Docker::API::Secret" => {
    "create" => [:Name, :Labels, :Data, :Driver, :Templating],
    "update" => [:Name, :Labels, :Data, :Driver, :Templating]
  },
  "Docker::API::Config" => {
    "create" => [:Name, :Labels, :Data, :Templating],
    "update" => [:Name, :Labels, :Data, :Templating]
  }
}
GEM_VERSION =
"0.20.0"
API_VERSION =
"1.43"
VERSION =
"Gem: #{Docker::API::GEM_VERSION} | API: #{Docker::API::API_VERSION}"