docker attach
:连接到正在运行中的容器。
语法
shell
docker attach [OPTIONS] CONTAINER
要attach
上去的容器必须正在运行,可以同时连接上同一个container
来共享屏幕(与screen
命令的attach
类似)。
官方文档中说attach
后可以通过CTRL-C
来detach
,但实际上经过测试,如果container
当前在运行bash
,CTRL-C
自然是当前行的输入,没有退出;如果container
当前正在前台运行进程,如输出nginx
的access.log
日志,CTRL-C
不仅会导致退出容器,而且还stop
了。这不是我们想要的,detach
的意思按理应该是脱离容器终端,但容器依然运行。好在attach
是可以带上--sig-proxy=false
来确保CTRL-D
或CTRL-C
不会关闭容器。
实例
容器mynginx
将访问日志指到标准输出,连接到容器查看访问信息:
shell
docker attach --sig-proxy=false mynginx
##效果如下:
192.168.239.1 - - [10/Jul/2023:16:54:26 +0000] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.93 Safari/537.36" "-"