NAME

WWW::Docker::API::System - Docker Engine System API

VERSION

version 0.001

SYNOPSIS

my $docker = WWW::Docker->new;

# System information
my $info = $docker->system->info;
say "Docker version: " . $info->{ServerVersion};

# API version
my $version = $docker->system->version;
say "API version: " . $version->{ApiVersion};

# Health check
my $pong = $docker->system->ping;

# Monitor events
my $events = $docker->system->events(
    since => time() - 3600,
);

# Disk usage
my $df = $docker->system->df;

DESCRIPTION

This module provides access to Docker system-level operations including daemon information, version detection, health checks, and event monitoring.

Accessed via $docker->system.

client

Reference to WWW::Docker client. Weak reference to avoid circular dependencies.

info

my $info = $system->info;

Get system-wide information about the Docker daemon.

Returns hashref with keys including:

  • ServerVersion - Docker version

  • Containers - Total number of containers

  • Images - Total number of images

  • Driver - Storage driver

  • MemTotal - Total memory

version

my $version = $system->version;

Get version information about the Docker daemon and API.

Returns hashref with keys including ApiVersion, Version, GitCommit, GoVersion, Os, and Arch.

ping

my $pong = $system->ping;

Health check endpoint. Returns OK string if daemon is responsive.

events

my $events = $system->events(
    since   => 1234567890,
    until   => 1234567900,
    filters => { type => ['container'] },
);

Get real-time events from the Docker daemon.

Options:

  • since - Show events created since this timestamp

  • until - Show events created before this timestamp

  • filters - Hashref of filters (e.g., { type => ['container', 'image'] })

df

my $usage = $system->df;

Get data usage information (disk usage by images, containers, and volumes).

Returns hashref with LayersSize, Images, Containers, and Volumes arrays.

SEE ALSO

SUPPORT

Issues

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

CONTRIBUTING

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

AUTHOR

Torsten Raudssus <torsten@raudssus.de>

COPYRIGHT AND LICENSE

This software is copyright (c) 2025 by Torsten Raudssus.

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