Docker的那些事儿

Docker的那些事儿—容器进入方式(19)

2018-03-12  本文已影响16人  sjyu_eadd

上一篇:Docker的那些事儿—容器启动方式(18)


前面了解了如何创建container了,那么自然而然有人会问,接下来我怎么进入running的container? 实际上,进入Docker container有好几种方式:

1、docker exec

2、docker attach

3、ssh

使用docker exec

使用docker attach

缺点:当多个窗口同时attach到同一个容器时,所有的窗口都会同步的显示,假如其中的一个窗口发生阻塞时,其它的窗口也会阻塞,docker attach命令可以说是最不方便的进入后台docker容器的方法。

使用ssh

ssh的方式使用场景比较单一,这要求需要事先登录container修改sshd服务(可能需要安装sshd服务)。然后就可以从宿主机直接ssh到container中。

例如:root@Ubuntu-001:~# ssh shayu@172.17.0.2

#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起来就可以,所以-d的作用就在于此。实际上大多数情况run时会加上-d参数,等到后续需要进入container才使用exec进入(exec是最常用的)。

当然我们还可以利用第三方的工具,例如nsenter,有兴趣的读者可以研究下。这里不再演示。


下一篇:Docker的那些事儿—容器生命周期管理(20)


上一篇下一篇

猜你喜欢

热点阅读