使用docker-py与'docker exec -it bash <container_id>'进行双向通信

我似乎无法弄清楚如何使用docker-py SDK启用容器shell会话的asynchronousI / O。 我基本上试图实现的是在docker-py中有一个相当于docker exec -it bash $container_id工作。

显然,stdout没有问题。 只是没有(显而易见的)方法来实际写入stdin来与正在运行的容器的shell进行交互。 这真的是吗?

 cmd = "bash" cli = docker.DockerClient() cli.containers.get(container_id) socket = cli.exec_run(cmd, stdin=True, socket=True) socket.writable() # => False 

我也尝试运行'bin/bash -c "export TERM=xterm; exec bash"作为cmd并将tty标志添加到exec_run。 不用说,无济于事。

难道我做错了什么?