2016-11-27 29 views
1

我使用泊坞窗-了构建我的码头工人容器和我与--service-ports标志,像这样运行容器:不能在泊坞窗容器IPDB控制台输入

docker-compose run --service-ports $(service_name) -d 

在尝试中调用IPDB使用import ipdb; ipdb.set_trace() ipdb的容器中的python脚本被初始化,但我无法在控制台中键入任何内容。我也必须手动重新启动终端会话才能停止它(CTRL+CCTRL+D等什么都不做)。这并不像终端已经冻结,因为我仍然可以向后滚动并开始对焦/取消对焦,光标也会改变外观。

这是我长期的样子(我用iTerm): enter image description here

任何想法如何解决这一问题?

回答

0

原来它归结为ipdb与docker容器中的eventlet.monkey_patch不兼容。

简单的修复,切换到pdbpp:d

+0

不幸的是'pdbpp'仍然没有与Python 3.x的正确兼容,所以这解决方法在所有情况下都不起作用。 – Kevin

+0

啊,我还在Python 2.7的古代土地上工作。至少现在我们知道这只是个案兼容性问题,我们可以探索其他选择。 – steve