前面了解了如何run一个容器实例了,那么自然而然有人会问,接下来我怎么进入running的container? 实际上,进入Docker container有好几种方式:
docker exec
docker attach
ssh
使用docker exec
使用docker attach
缺点:当多个窗口同时attach到同一个容器时,所有的窗口都会同步的显示,假如其中的一个窗口发生阻塞时,其它的窗口也会阻塞,docker attach命令可以说是最不方便的进入后台docker容器的方法。
使用ssh
ssh的方式使用场景比较单一,这要求需要container本身开启了sshd服务。然后就可以从宿主机直接ssh到container中。
#shayu是容器内创建的用户
#172.17.0.2是docker自动为创建的容器分配的IP,可以通过docker inspect containerID查询
Ctrl + p and Ctrl + q 退出container或者exit 退出container。
而实际上docker run可以直接进入container
但是有些时候run container的时候并不一定要进入container,只需要后台run起来就可以,实际上大多数情况run时会加上-d参数(容器进程后台运行),等到后续需要进入container才使用exec进入(exec是最常用的)。
当然我们还可以利用第三方的工具,例如nsenter,有兴趣的可以研究下。这里不再演示。
领取专属 10元无门槛券
私享最新 技术干货