如何从python运行docker命令?

我想从 python 运行一组 docker 命令。我尝试创建一个如下所示的脚本并使用 paramiko ssh_client 从 python 运行脚本以连接到运行 docker 的机器:


#!/bin/bash


   # Get container ID

   container_id="$(docker ps | grep hello | awk '{print $1}')"


   docker exec -it $container_id sh -c "cd /var/opt/bin/ && echo $1 && 

   echo $PWD && ./test.sh -q $1"

但docker exec ...永远不会被执行。


所以我尝试直接在运行docker的机器上运行下面的python脚本:import subprocess


docker_run = "docker exec 7f34a9c1b78f /bin/bash -c \"cd 

/var/opt/bin/ && ls -a\"".split()

subprocess.call(docker_run, shell=True)

我收到一条消息:“用法:docker COMMAND...”


但是如果我运行命令,我会得到预期的结果


docker exec 7f34a9c1b78f /bin/bash -c "cd /var/opt/bin/ && ls -a" 直接在机器里


如何从 python 脚本运行多个 docker 命令?谢谢!


阿晨1998
浏览 329回答 2
2回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python