Skip to content

Jayshanx/docker-py

This branch is 1242 commits behind docker/docker-py:main.

Folders and files

NameName
Last commit message
Last commit date
Jun 28, 2017
Jun 23, 2017
Mar 23, 2016
Jun 28, 2017
Jul 11, 2014
Apr 15, 2017
Oct 22, 2015
Nov 22, 2016
Nov 22, 2016
Dec 12, 2016
Dec 2, 2016
Apr 15, 2017
Dec 2, 2016
Jun 27, 2017
Sep 5, 2016
Dec 12, 2016
Feb 10, 2017
May 10, 2017
Jan 13, 2017
Mar 29, 2017
Nov 22, 2016
Jan 25, 2016
Oct 3, 2016
Mar 17, 2017
Jun 14, 2017
May 19, 2016
Mar 29, 2017
Jun 3, 2016

Repository files navigation

Docker SDK for Python

Build Status

A Python library for the Docker Engine API. It lets you do anything the docker command does, but from within Python apps – run containers, manage containers, manage Swarms, etc.

Installation

The latest stable version is available on PyPI. Either add docker to your requirements.txt file or install with pip:

pip install docker

Usage

Connect to Docker using the default socket or the configuration in your environment:

import docker
client = docker.from_env()

You can run containers:

>>> client.containers.run("ubuntu", "echo hello world")
'hello world\n'

You can run containers in the background:

>>> client.containers.run("bfirsh/reticulate-splines", detach=True)
<Container '45e6d2de7c54'>

You can manage containers:

>>> client.containers.list()
[<Container '45e6d2de7c54'>, <Container 'db18e4f20eaa'>, ...]

>>> container = client.containers.get('45e6d2de7c54')

>>> container.attrs['Config']['Image']
"bfirsh/reticulate-splines"

>>> container.logs()
"Reticulating spline 1...\n"

>>> container.stop()

You can stream logs:

>>> for line in container.logs(stream=True):
...   print line.strip()
Reticulating spline 2...
Reticulating spline 3...
...

You can manage images:

>>> client.images.pull('nginx')
<Image 'nginx'>

>>> client.images.list()
[<Image 'ubuntu'>, <Image 'nginx'>, ...]

Read the full documentation to see everything you can do.

About

A Python library for the Docker Engine API

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.5%
  • Other 0.5%