aiodocker 0.22.2

Creator: codyrutscher

Last updated:

Add to Cart

Description:

aiodocker 0.22.2

A simple Docker HTTP API wrapper written with asyncio and aiohttp.

Installation
pip install aiodocker


Development
Create a virtualenv (either using python -m venv, pyenv or your
favorite tools) and install in the editable mode with ci and dev optional
dependency sets.
pip install -U pip
pip install -e '.[ci,dev]' # in zsh, you need to escape brackets
pre-commit install

Running tests
# Run all tests
make test

# Run individual tests
python -m pytest tests/test_images.py


Building packages
NOTE: Usually you don’t need to run this step by yourself.
pip install -U build
python -m build --sdist --wheel



Documentation
http://aiodocker.readthedocs.io


Examples
import asyncio
import aiodocker

async def list_things(docker):
print('== Images ==')
for image in (await docker.images.list()):
tags = image['RepoTags'][0] if image['RepoTags'] else ''
print(image['Id'], tags)
print('== Containers ==')
for container in (await docker.containers.list()):
print(f" {container._id}")

async def run_container(docker):
print('== Running a hello-world container ==')
container = await docker.containers.create_or_replace(
config={
'Cmd': ['/bin/ash', '-c', 'echo "hello world"'],
'Image': 'alpine:latest',
},
name='testing',
)
await container.start()
logs = await container.log(stdout=True)
print(''.join(logs))
await container.delete(force=True)

async def main():
docker = aiodocker.Docker()
await list_things(docker)
await run_container(docker)
await docker.close()

if __name__ == "__main__":
asyncio.run(main())

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.