使用 Python SDK 创建 Docker 容器并在其中执行命令

Create Docker container with Python SDK and execute commands in it

我正在尝试使用 Docker Python SDK 创建一个 Docker 容器,并在其中继续执行一些命令并获得一些结果。

我在文档中发现我可以运行容器执行一个命令然后这个容器就消失了

import docker
client = docker.from_env()
client.containers.run('alpine', 'echo hello world')

或者创建一个容器并将其 运行 作为守护进程

container = client.containers.run('bfirsh/reticulate-splines',
                                  detach=True)

但我仍然不知道如何保留容器 运行ning 并向其发送命令来执行,这可能吗?还是我错过了什么?还是我误解了什么?

我不确定你想要达到什么目的。但如果这有帮助,下面是我如何从图像创建 docker 容器:

import docker as docker_sdk


docker = docker_sdk.from_env()

docker.containers.run(image='name_of_your_image',                                                                                                                                                      
                      command='/usr/sbin/your_command --arg 123 --abc',                                                                                                                              
                      name=CONTAINER_NAME,                                                                                                                                              
                      hostname='host',                                                                                                                                                   
                      volumes={                                                                                                                                                         
                          '/container_directory': {                                                                                                                                       
                              'bind': '/host/home/user/directory',                                                                                                                             
                              'mode': 'rw'                                                                                                                                              
                          }                                                                                                                                                             
                      },                                                                                                                                                                
                      detach=True)

此处提供文档和示例:https://docker-py.readthedocs.io/en/stable/containers.html