Docker:连接到分离的容器

我试图附加到一个分离的容器,但它似乎冻结,我不得​​不ctrl-C返回到壳。

我用这个开始我的容器

sudo docker run -d -t mysql /bin/bash 

当我尝试附加它

 sudo docker attach <id> 

它什么都不做,只是坚持我的shell会话。

但是,如果我用互动开始我的容器

 sudo docker run -i -t mysql /bin/bash 

和CTRL-P / Q退出,然后附上上面的命令,它工作得很好。

有什么我做错了吗?

谢谢

-d你的容器运行在后台分离。 如果你想和它交互,用docker exec在这个容器里面连接,或者你已经注意到了,运行不是分离的,而是用-i -t

如果我以交互模式和CTRL-P / Q启动它,它是否把它放到分离模式?

不,检查文档docs.docker.com/articles/basics/#running-an-interactive-shel l,提取“o分离tty而不退出shell,#使用转义序列Ctrl-p + Ctrl-q” ,-t -i表示运行一个交互式容器,一个TTY和捕获STDIN