The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Podman - Library of bindings to use the RESTful API of https://podman.io service.

SYNOPSIS

    # Build and store image
    use Podman qw(build);
    my $image = build('localhost/goodbye', '/tmp/goodbye/Dockerfile');

    # List stored images name
    say $_->name for $Podman::images;

    # Show version information
    use Podman qw(:all);
    say version->{Version};

DESCRIPTION

Podman is a library of bindings to use the RESTful API of https://podman.io service. It is currently under development and contributors are welcome!

FUNCTIONS

Podman::Image implements the following functions, which can be imported individually or colletctively.

build

    my $image  = Podman::build('localhost/goodbye', '/tmp/goodbye/Dockerfile', %opts);

Build and store named image from given build file and additional build options.

containers

    use Podman qw(containers);
    say $_->inspect->{Id} for containers->each;

Return Mojo::Collection of available containers.

create

    use Podman qw(:all);
    my $container = create('nginx', 'docker.io/library/nginx', %opts);

Create named container based on given image and additional create options.

images

    say Podman::images->size;

Return Mojo::Collection of stored images.

pull

    my $image = Podman::pull('docker.io/library/hello-world');

Pull and store named image from registry.

version

    use Podman qw(version);
    say version->{APIVersion};

Obtain a dictionary of versions for the Podman service components.

AUTHORS

    Tobias Schäfer, <tschaefer@blackox.org>

COPYRIGHT AND LICENSE

Copyright (C) 2022-2022, Tobias Schäfer.

This program is free software, you can redistribute it and/or modify it under the terms of the Artistic License version 2.0.

SEE ALSO

https://github.com/tschaefer/podman-perl, https://docs.podman.io/en/v3.0/_static/api.html