python docker

python

In [1]:

import docker

In [2]:

client = docker.from_env(version='1.24', timeout=6)

In [3]:

# client

print(dir(client))

 

['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattr__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'api', 'configs', 'containers', 'df', 'events', 'from_env', 'images', 'info', 'login', 'networks', 'nodes', 'ping', 'plugins', 'secrets', 'services', 'swarm', 'version', 'volumes']

In [4]:

images = client.images

In [5]:

print(dir(images))

 

['__call__', '__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'build', 'client', 'create', 'get', 'list', 'load', 'model', 'prepare_model', 'prune', 'pull', 'push', 'remove', 'search']

In [6]:

print(images.list(), "---\n", images.list(name="jenkins"), "---\n", images.list(all=True),"---\n", images.list(filters={"dangling": False}))

 

[<Image: 'docker.io/node:latest'>, <Image: 'docker.io/jenkins:latest'>, <Image: 'docker.io/redis:latest'>, <Image: 'docker.io/jpetazzo/nsenter:latest'>] ---

[<Image: 'docker.io/jenkins:latest'>] ---

[<Image: 'docker.io/node:latest'>, <Image: 'docker.io/jenkins:latest'>, <Image: 'docker.io/redis:latest'>, <Image: 'docker.io/jpetazzo/nsenter:latest'>] ---

[<Image: 'docker.io/node:latest'>, <Image: 'docker.io/jenkins:latest'>, <Image: 'docker.io/redis:latest'>, <Image: 'docker.io/jpetazzo/nsenter:latest'>]

In [7]:

image = images.get("node")

In [8]:

print(image, dir(image))

 

<Image: 'docker.io/node:latest'> ['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'attrs', 'client', 'collection', 'history', 'id', 'id_attribute', 'labels', 'reload', 'save', 'short_id', 'tag', 'tags']

In [9]:

print(images.list())

 

[<Image: 'docker.io/node:latest'>, <Image: 'docker.io/jenkins:latest'>, <Image: 'docker.io/redis:latest'>, <Image: 'docker.io/jpetazzo/nsenter:latest'>]

In [10]:

containers = client.containers

print(dir(containers))

 

['__call__', '__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'client', 'create', 'get', 'list', 'model', 'prepare_model', 'prune', 'run']

In [18]:

#在运行的容器

print("running: ",containers.list())

print("all: ", containers.list(all=True))

 

running:  [<Container: ff9517585f>]

all: [<Container: 0edc7e4e22>, <Container: 082c3d3322>, <Container: ff9517585f>]

In [19]:

images.pull("alpine", tag="latest")

Out[19]:

<Image: 'docker.io/alpine:latest'>

In [20]:

# docker pull alpine后运行

containers.run('alpine', 'echo hello world')

Out[20]:

b'hello world\n'

以上是 python docker 的全部内容, 来源链接: utcz.com/z/388250.html

回到顶部