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.6.0.tar.gz (72.8 kB view details)

Uploaded Source

Built Distribution

podman-5.6.0-py3-none-any.whl (88.7 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for podman-5.6.0.tar.gz
Algorithm Hash digest
SHA256 cc5f7aa9562e30f992fc170a48da970a7132be60d8a2e2941e6c17bd0a0b35c9
MD5 1b2a8ab0979b222d3407a5e5416c0117
BLAKE2b-256 3b36070e7bf682ac0868450584df79198c178323e80f73b8fb9b6fec8bde0a65

See more details on using hashes here.

Provenance

The following attestation bundles were made for podman-5.6.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.6.0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for podman-5.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 967ff8ad8c6b851bc5da1a9410973882d80e235a9410b7d1e931ce0c3324fbe3
MD5 df8e55d24116d694e72f44810ddaf239
BLAKE2b-256 0a9e8c62f05b104d9f00edbb4c298b152deceb393ea67f0288d89d1139d7a859

See more details on using hashes here.

Provenance

The following attestation bundles were made for podman-5.6.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