在Docker中,`attach`和`exec`是两个不同的命令,用于与正在运行的容器进行交互。
1. `docker attach`命令用于附加到正在运行的容器的标准输入、输出和错误流。它将连接到容器的主进程,并将其输出直接打印到当前终端。通过`docker attach`命令,你可以查看容器的输出日志或与正在运行的进程进行交互。然而,需要注意的是,当你使用`docker attach`连接到容器时,使用Ctrl+C将会中断容器的运行,这可能不是你期望的行为。
2. `docker exec`命令用于在正在运行的容器中执行特定的命令。通过`docker exec`,你可以在容器内部启动一个新的进程,并执行指定的命令。与`docker attach`不同,`docker exec`在后台执行命令,并将命令的输出打印到当前终端。你可以使用`docker exec`来在容器中执行各种操作,例如运行shell命令、安装软件包、查看容器内部的文件等。
综上所述,`docker attach`用于附加到容器的标准输入输出流,以实时查看容器的输出和交互,而`docker exec`用于在容器内部执行特定的命令。
标签:容器,命令,输出,exec,attach,docker From: https://www.cnblogs.com/tangjicheng/p/17433327.html