如何在python docker SDK中使用exec_run替换我的docker cli命令

萨克

我想将以下命令替换为docker python sdk

docker exec 6d9c9b679541 /u01/app/oracle/product/12.0.0/dbhome_1/bin/sqlplus sachin/sachin@orcl @1.sql

这是我正在编写的代码以及我使用python3遇到的错误

>>> import docker
>>> client = docker.from_env()
>>> client.exec_run('6d9c9b679541',command='/u01/app/oracle/product/12.0.0/dbhome_1/bin/sqlplus sachin/sachin@orcl @1.sql')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.6/site-packages/docker/client.py", line 205, in __getattr__
    raise AttributeError(' '.join(s))
AttributeError: 'DockerClient' object has no attribute 'exec_run'

如何解决这个问题?

saulotoledo

from_env方法返回一个DockerClient对象(此处为docs)。

您需要先获取容器,然后再使用exec_run方法。如果要访问正在运行的容器,则需要以下内容:

container = client.containers.get('your_container_name_or_id')

现在,您可以在容器中运行命令:

container.exec_run('your command here')

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在 docker-compose cli 中使用多个命令

Python Docker SDK docker exec_run在运行时失败

Docker CLI:带引号的docker run命令

如何在docker run命令中使用环境变量?

使用CLI命令进行Docker卷挂载

在docker exec命令中使用'*'

我如何告诉我的Dockerfile在docker-compose的RUN命令中使用哪个DNS?

如何在Docker构建中使用COPY命令?

如何在 Jenkins 中使用 shell 命令启动 docker 容器

如何在docker logs命令中使用--since选项

如何在 docker 容器 bash 中使用 cat 命令

如何将参数传递给在CLI(命令行界面)中运行的docker?

如何运行 hyperedger/composer-cli docker 镜像来执行 composer 命令?

如何在 Docker 中运行 sudo 命令?

如何在Docker容器中运行命令

如何使用Docker文件运行Docker命令

如何在 docker exec bash 命令中转义引号

如何在长docker RUN命令中添加注释?

Docker 能够运行针对 AWS CLI 的 shell 命令

为什么Docker CLI命令默认为控制容器?

Docker命令(CLI)默认为端口而不是套接字

为什么某些 Docker CLI 子命令带有星号?

如何在我的ubuntu docker映像中安装“ ifconfig”命令?

如何在 docker-compose 卷中使用 bash 命令命令?

dockerfile中的docker run命令仅在未在cli上指定命令时才执行

如何在From python:3.6环境下在docker映像中运行brew命令?

如何使用docker exec运行2个命令

如何在运行docker run命令时在docker文件中动态传递ENV值?

如何在 WP CLI 命令中强制使用参数