"docker logs"和"docker attach"有什么区别?

dan*_*iaz 4 docker

它们都允许您连接到正在运行的容器的stdout/stderr.特别是docker logs --follow似乎与...类似docker attach.

一个命令是另一个命令的过时版本,还是存在显着差异?

TvE*_*TvE 8

docker日志只管道你stderr/stdout,而attach附加stdin/out/err和代理信号.

例如,附加文档(https://docs.docker.com/engine/reference/commandline/attach/#description)声明"您可以使用CTRL-p CTRL-再次从容器中分离(并使其保持运行) q(对于一个安静的出口),或CTRL-c将向容器发送SIGKILL,或CTRL- \以在它退出时获得Docker客户端的堆栈跟踪.当你从容器的进程中分离时,退出代码将被返回给客户."

如果容器有一个pty我会假设你附加到pty并具有完整的pty功能(尚未测试).

希望这个对你有帮助!