Docker attach 后断开时不退出容器

docker attach 可以连接上 Docker 容器的标准输入,输出和错误输出。比如 docker attach 连接后就能显示容器中用 ENTRYPOINT/CMD 启动进程的输出内容内容。想要断开会话连接怎么做呢?ctrl - c, 控制台是不再显示了,可以容器也被终止了,显然这是一个危险的操作。

ctrl - c 不仅仅关闭了 docker attach 本身,因为它的默认参数 --sig-proxytrue,所以 SIGKILL 信号同时传递到了 ENTRYPOINT/CMD 的 PID 1 的进程,所以形成了双杀的效果。我们来试一下

如果是在生产环境下,用 docker attach 连接下控制台看下输出,然后不小心像终止 tail -f 命令一样用 ctrl - c  退出,结果服务断了。所以更为小心的操作还是用 docker logsdocker attach 的优势只是在于能查看实时的控制台输出。 阅读全文 >>