Docker:附加到分离的容器

Docker: Attaching to detached container

我正在尝试附加到一个分离的容器,但它似乎冻结了,我必须按 ctrl-c 才能返回到 shell。

我用这个启动我的容器

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

If I start it in interactive mode and ctrl-p/q, does that put it into detach mode?

没有,查看文档docs.docker.com/articles/basics/#运行ning-an-interactive-shel‌ l,提取"o detach the tty without exiting the shell, # use the escape sequence Ctrl-p + Ctrl-q",-t -i表示运行使用 TTY 和捕获 STDIN 的交互式容器