NAME

API::Docker::Type::SystemInfo - The body of the 200 response to GET /info

VERSION

version 0.004

DESCRIPTION

Generated from the SystemInfo definition of spec/v1.51.yaml, which the swagger leaves undescribed. paths: says what it is: the body of the 200 response to GET /info.

id

Unique identifier of the daemon.

> Note: The format of the ID itself is not part of the API, and > should not be considered stable. Serialised as ID -- spelled out, because deriving it from the Perl name would produce Id.

containers

Total number of containers on the host.

containers_running

Number of containers with status "running".

containers_paused

Number of containers with status "paused".

containers_stopped

Number of containers with status "stopped".

images

Total number of images on the host.

Both tagged and untagged (dangling) images are counted.

driver

Name of the storage driver in use.

driver_status

Information specific to the storage driver, provided as "label" / "value" pairs.

This information is provided by the storage driver, and formatted in a way consistent with the output of docker info on the command line.

> Note: The information returned in this field, including the > formatting of values and labels, should not be considered stable, > and may change without notice.

docker_root_dir

Root directory of persistent Docker state.

Defaults to /var/lib/docker on Linux, and C:\ProgramData\docker on Windows.

plugins

Available plugins per type. See API::Docker::Type::PluginsInfo.

memory_limit

Indicates if the host has memory limit support enabled.

swap_limit

Indicates if the host has memory swap limit support enabled.

kernel_memory_tcp

Indicates if the host has kernel memory TCP limit support enabled. This field is omitted if not supported.

Kernel memory TCP limits are not supported when using cgroups v2, which does not support the corresponding memory.kmem.tcp.limit_in_bytes cgroup.

Deprecated: This field is deprecated as kernel 6.12 has deprecated kernel memory TCP accounting. Serialised as KernelMemoryTCP -- spelled out, because deriving it from the Perl name would produce KernelMemoryTcp.

cpu_cfs_period

Indicates if CPU CFS(Completely Fair Scheduler) period is supported by the host.

cpu_cfs_quota

Indicates if CPU CFS(Completely Fair Scheduler) quota is supported by the host.

cpu_shares

Indicates if CPU Shares limiting is supported by the host. Serialised as CPUShares -- spelled out, because deriving it from the Perl name would produce CpuShares.

cpu_set

Indicates if CPUsets (cpuset.cpus, cpuset.mems) are supported by the host.

See cpuset(7) Serialised as CPUSet -- spelled out, because deriving it from the Perl name would produce CpuSet.

pids_limit

Indicates if the host kernel has PID limit support enabled.

oom_kill_disable

Indicates if OOM killer disable is supported on the host.

ipv4_forwarding

Indicates IPv4 forwarding is enabled. Serialised as IPv4Forwarding -- spelled out, because deriving it from the Perl name would produce Ipv4Forwarding.

debug

Indicates if the daemon is running in debug-mode / with debug-level logging enabled.

n_fd

The total number of file Descriptors in use by the daemon process.

This information is only returned if debug-mode is enabled.

n_goroutines

The number of goroutines that currently exist.

This information is only returned if debug-mode is enabled.

system_time

Current system-time in RFC 3339 format with nano-seconds.

logging_driver

The logging driver to use as a default for new containers.

cgroup_driver

The driver to use for managing cgroups. The swagger enumerates cgroupfs, systemd and none. The daemon defaults it to cgroupfs.

cgroup_version

The version of the cgroup. The swagger enumerates 1 and 2. The daemon defaults it to 1.

n_events_listener

Number of event listeners subscribed.

kernel_version

Kernel version of the host.

On Linux, this information obtained from uname. On Windows this information is queried from the HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\ registry value, for example _"10.0 14393 (14393.1198.amd64fre.rs1_release_sec.170427-1353)"_.

operating_system

Name of the host's operating system, for example: "Ubuntu 24.04 LTS" or "Windows Server 2016 Datacenter".

os_version

Version of the host's operating system

> Note: The information returned in this field, including its > very existence, and the formatting of values, should not be considered > stable, and may change without notice. Serialised as OSVersion -- spelled out, because deriving it from the Perl name would produce OsVersion.

os_type

Generic type of the operating system of the host, as returned by the Go runtime (GOOS).

Currently returned values are "linux" and "windows". A full list of possible values can be found in the Go documentation. Serialised as OSType -- spelled out, because deriving it from the Perl name would produce OsType.

architecture

Hardware architecture of the host, as returned by the operating system. This is equivalent to the output of uname -m on Linux.

Unlike Arch (from /version), this reports the machine's native architecture, which can differ from the Go runtime architecture when running a binary compiled for a different architecture (for example, a 32-bit binary running on 64-bit hardware).

n_cpu

The number of logical CPUs usable by the daemon.

The number of available CPUs is checked by querying the operating system when the daemon starts. Changes to operating system CPU allocation after the daemon is started are not reflected. Serialised as NCPU -- spelled out, because deriving it from the Perl name would produce NCpu.

mem_total

Total amount of physical memory available on the host, in bytes.

index_server_address

Address / URL of the index server that is used for image search, and as a default for user authentication for Docker Hub and Docker Cloud.

registry_config

RegistryServiceConfig stores daemon registry services configuration. See API::Docker::Type::RegistryServiceConfig.

generic_resources

User-defined resources can be either Integer resources (e.g, SSD=3) or String resources (e.g, GPU=UUID1). See API::Docker::Type::GenericResource.

http_proxy

HTTP-proxy configured for the daemon. This value is obtained from the HTTP_PROXY environment variable. Credentials (user info component) in the proxy URL are masked in the API response.

Containers do not automatically inherit this configuration.

https_proxy

HTTPS-proxy configured for the daemon. This value is obtained from the HTTPS_PROXY environment variable. Credentials (user info component) in the proxy URL are masked in the API response.

Containers do not automatically inherit this configuration.

no_proxy

Comma-separated list of domain extensions for which no proxy should be used. This value is obtained from the NO_PROXY environment variable.

Containers do not automatically inherit this configuration.

name

Hostname of the host.

labels

User-defined labels (key/value metadata) as set on the daemon.

> Note: When part of a Swarm, nodes can both have daemon labels, > set through the daemon configuration, and node labels, set from a > manager node in the Swarm. Node labels are not included in this > field. Node labels can be retrieved using the /nodes/(id) endpoint > on a manager node in the Swarm.

experimental_build

Indicates if experimental features are enabled on the daemon.

server_version

Version string of the daemon.

runtimes

List of OCI compliant runtimes configured on the daemon. Keys hold the "name" used to reference the runtime.

The Docker daemon relies on an OCI compliant runtime (invoked via the containerd daemon) as its interface to the Linux kernel namespaces, cgroups, and SELinux.

The default runtime is runc, and automatically configured. Additional runtimes can be configured by the user and will be listed here. See API::Docker::Type::Runtime. The keys are the caller's data and are never translated.

default_runtime

Name of the default OCI runtime that is used when starting containers.

The default can be overridden per-container at create time.

swarm

Represents generic information about swarm. See API::Docker::Type::SwarmInfo.

live_restore_enabled

Indicates if live restore is enabled.

If enabled, containers are kept running when the daemon is shutdown or upon daemon start if running containers are detected. The daemon defaults it to false.

isolation

Represents the isolation technology to use as a default for containers. The supported values are platform-specific.

If no isolation value is specified on daemon start, on Windows client, the default is hyperv, and on Windows server, the default is process.

This option is currently not used on other platforms.

init_binary

Name and, optional, path of the docker-init binary.

If the path is omitted, the daemon searches the host's $PATH for the binary and uses the first result.

containerd_commit

Commit holds the Git-commit (SHA1) that a binary was built from, as reported in the version-string of external tools, such as containerd, or runC. See API::Docker::Type::Commit.

runc_commit

Commit holds the Git-commit (SHA1) that a binary was built from, as reported in the version-string of external tools, such as containerd, or runC. See API::Docker::Type::Commit.

init_commit

Commit holds the Git-commit (SHA1) that a binary was built from, as reported in the version-string of external tools, such as containerd, or runC. See API::Docker::Type::Commit.

security_options

List of security features that are enabled on the daemon, such as apparmor, seccomp, SELinux, user-namespaces (userns), rootless and no-new-privileges.

Additional configuration options for each security feature may be present, and are included as a comma-separated list of key/value pairs.

product_license

Reports a summary of the product license on the daemon.

If a commercial license has been applied to the daemon, information such as number of nodes, and expiration are included.

default_address_pools

List of custom default address pools for local networks, which can be specified in the daemon.json file or dockerd option.

Example: a Base "10.10.0.0/16" with Size 24 will define the set of 256 10.10.[0-255].0/24 address pools. See API::Docker::Type::SystemInfo::DefaultAddressPool.

firewall_backend

Information about the daemon's firewalling configuration. See API::Docker::Type::FirewallInfo.

discovered_devices

List of devices discovered by device drivers.

Each device includes information about its source driver, kind, name, and additional driver-specific attributes. See API::Docker::Type::DeviceInfo.

warnings

List of warnings / informational messages about missing features, or issues related to the daemon configuration.

These messages can be printed by the client as information to the user.

cdi_spec_dirs

List of directories where (Container Device Interface) CDI specifications are located.

These specifications define vendor-specific modifications to an OCI runtime specification for a container being created.

An empty list indicates that CDI device injection is disabled.

Note that since using CDI device injection requires the daemon to have experimental enabled. For non-experimental daemons an empty list will always be returned. Serialised as CDISpecDirs -- spelled out, because deriving it from the Perl name would produce CdiSpecDirs.

containerd

Information for connecting to the containerd instance that is used by the daemon. See API::Docker::Type::ContainerdInfo.

SUPPORT

Issues

Please report bugs and feature requests on GitHub at https://github.com/Getty/p5-api-docker/issues.

CONTRIBUTING

Contributions are welcome! Please fork the repository and submit a pull request.

AUTHOR

Torsten Raudssus <getty@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2026 by Torsten Raudssus <torsten@raudssus.de> https://raudssus.de/.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.