如果我有一个运行中的具有多个外壳的Docker容器(以docker exec
开头),如何指定要使用docker logs
查看日志的外壳?
MWE
启动一个容器并分离:
$ docker run --name abc -it ubuntu:18.04 bash
root@42ed5a361841:/# echo 1
1
root@2dc7a9b2bfcf:/# % <detach>
在容器上启动新外壳并分离:
$ docker exec -it abc bash
root@2dc7a9b2bfcf:/# echo 2
2
root@75884897f1bb:/# read escape sequence <detach>
查看日志:
$ docker logs abc
root@75884897f1bb:/# echo 1
1
那另一个外壳程序(echo 2
)中的日志呢?似乎没有指定此参数的命令行参数。
一个相关的问题:如何docker attach
而不是第一个进入第二个shell?
$ docker attach abc
root@75884897f1bb:/# history
1 echo 1
2 history