如何使用ssh进入到docker容器中(sudo docker exec -it 5597561f8ec3 bash 报错:OCI runtime exec failed: exec failed: unable to start container process: exec: "bash": executable file not found in $PATH: unknown)
官网教程
docker exec -it 5597561f8ec3 bash
docker exec
后边可以跟多个参数,这里主要说明-i
-t
参数。只用
-i
参数时,由于没有分配伪终端,界面没有我们熟悉的 Linux 命令提示符,但命令执行结果仍然可以返回。当
-i
-t
参数一起使用时,则可以看到我们熟悉的 Linux 命令提示符。
如果执行上述命令发生如下报错,可以尝试使用以下命令。
报错:
ubuntu@VM-16-6-ubuntu:~$ sudo docker exec -it 5597561f8ec3 /bin/bash
OCI runtime exec failed: exec failed: unable to start container process: exec: "/bin/bash": stat /bin/bash: no such file or directory: unknown
原因:
可能是您的Linux系统没有安装二进制 `/bin/bash`
解决方案
方案一:
没有安装二进制
/bin/bash
但它应该有/bin/sh
docker exec -ti 5597561f8ec3 /bin/sh
或者
docker exec -it 5597561f8ec3 sh
方案二:
直接执行下面的命令,而无需访问任何 shell
docker exec -ti 5597561f8ec3 ls /etc
docker exec
命令教程请参考:https://yeasy.gitbook.io/docker_practice/container/attach_exec解决方案参考:stackoverflow.com
退出docker容器使用
exit
命令