Skip to main content

Bindings for Podman RESTful API

Project description

podman-py

PyPI Latest Version

This python package is a library of bindings to use the RESTful API of Podman. It is currently under development and contributors are welcome!

Installation

pip install podman

Documentation: https://podman-py.readthedocs.io/en/latest/

Source Code: https://github.com/containers/podman-py


Dependencies

  • For runtime dependencies, see [dependencies] in pyproject.toml
  • For testing and development dependencies, see [project.optional.dependencies] in pyproject.toml
    • The package is split in [progress_bar], [docs], and [test]

Example usage

"""Demonstrate PodmanClient."""
import json
from podman import PodmanClient

# Provide a URI path for the libpod service.  In libpod, the URI can be a unix
# domain socket(UDS) or TCP.  The TCP connection has not been implemented in this
# package yet.

uri = "unix:///run/user/1000/podman/podman.sock"

with PodmanClient(base_url=uri) as client:
    version = client.version()
    print("Release: ", version["Version"])
    print("Compatible API: ", version["ApiVersion"])
    print("Podman API: ", version["Components"][0]["Details"]["APIVersion"], "\n")

    # get all images
    for image in client.images.list():
        print(image, image.id, "\n")

    # find all containers
    for container in client.containers.list():
        # After a list call you would probably want to reload the container
        # to get the information about the variables such as status.
        # Note that list() ignores the sparse option and assumes True by default.
        container.reload()
        print(container, container.id, "\n")
        print(container, container.status, "\n")

        # available fields
        print(sorted(container.attrs.keys()))

    print(json.dumps(client.df(), indent=4))

Contributing

See CONTRIBUTING.md

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

podman-5.5.0.tar.gz (71.8 kB view details)

Uploaded Source

Built Distribution

podman-5.5.0-py3-none-any.whl (87.4 kB view details)

Uploaded Python 3

File details

Details for the file podman-5.5.0.tar.gz.

File metadata

  • Download URL: podman-5.5.0.tar.gz
  • Upload date:
  • Size: 71.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for podman-5.5.0.tar.gz
Algorithm Hash digest
SHA256 4416af01d1a236185eb0110488241318eb3fb07337720a955246d807441d8b71
MD5 f73be7136f3761b805ab180ccb3eb81c
BLAKE2b-256 bfe10fee9214caa0fd132fae78d71136a02bbb026711f23ad5063a7fea41a644

See more details on using hashes here.

Provenance

The following attestation bundles were made for podman-5.5.0.tar.gz:

Publisher: publish-to-test-pypi.yml on containers/podman-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file podman-5.5.0-py3-none-any.whl.

File metadata

  • Download URL: podman-5.5.0-py3-none-any.whl
  • Upload date:
  • Size: 87.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for podman-5.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bdc6bbc9c86b9fcd79805d98babd9dae6fbeea8cbcc563900aebbfb4d4995008
MD5 155138a3f5471902c225c87c760e6c37
BLAKE2b-256 2217f9c925ca5b19422204c3799ed297d9bb2a5dbec03b765cfde81753c54b3c

See more details on using hashes here.

Provenance

The following attestation bundles were made for podman-5.5.0-py3-none-any.whl:

Publisher: publish-to-test-pypi.yml on containers/podman-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page