它们都允许您连接到正在运行的容器的stdout/stderr。特别是docker logs --follow
似乎与docker attach
类似。
这两个命令是否相互替代,还是存在重大差异?
它们都允许您连接到正在运行的容器的stdout/stderr。特别是docker logs --follow
似乎与docker attach
类似。
这两个命令是否相互替代,还是存在重大差异?
docker logs只是将stderr/stdout导向管道,而attach则会附加stdin/out/err并代理信号。
例如,attach的文档(https://docs.docker.com/engine/reference/commandline/attach/#description)说明:“您可以使用CTRL-p CTRL-q(安静退出)或CTRL-c(发送SIGKILL到容器)或CTRL-\(在退出时获取Docker客户端的堆栈跟踪)从容器中分离出来(并使其保持运行状态)。当您从容器的进程中分离时,退出代码将返回给客户端。”
如果容器有pty,则我会假设您将连接到pty并具有完整的pty功能(尚未测试)。
希望这能帮助一点!