timeout 作用于 docker exec 时导致 docker exec hang住
博主在做一个与docker exec
相关的项目时,发现,低版本docker
与timeout
命令一起作用时,表现为docker exec
命令hang住。
见:https://github.com/moby/moby/issues/28207
经测试:timeout
不管是直接,还是间接作用于 docker exec
都会发生这个问题。只要 docker exec
执行时,受某个 timeout
限制。
存在该bug的 docker
版本:1.11
1.12
解决方案
在 timeout
命令上,增加 --foreword
参数。
另注意:使用 docker exec
命令时,如出现bug,请检查参数,例如,-i
-t
-u
等。
-u root
:表示在容器中以root
用户执行给定命令。
-t
:与tty相关。