docker记录
对于docker已经启动的容器中的服务是否启动的操作
首先进入容器:
dockerexec -it CONTAINER_ID bash进入容器终端并且的保留为容器终端的输入形式(-it和bash的结合作用)
官方解释:
exec: Run a command in a running container(在运行的容器中运行命令)
exec -i: --interactive(相互作用的) Keep STDIN open even if not attached(即使没有连接,也要保持STDIN打开)
exec -t: --tty Allocate a pseudo-TTY(分配一个 冒充的终端设备)
自我理解:
CONTAINER_ID :容器id只要是能够证明唯一就可以,不用全输入 例子:
我们只输入be就可以达到唯一的效果了! dockerexec -it be bash 这样就可以
exec: exec + 容器id就是在选中容器中执行命令 :如exec be0ab ls 就是在be…的容器中执行ls就能看见目录结构了
执行效果:
我们还要执行什么就一直要要加exec be0ab前缀来执行该容器下的操作想要去掉就要加上 -it
-it :目前的理解浅薄,就是要等在容器内的命令执行完毕才会出来到当前操作;没有-it的加就相当于在容器内执行一下命令,不等容器内部是否执行完毕直接出来,而我们看见的他在上面是因为容器内的执行快,(行动派可以试试在里面写个循环制造时间验证)
那么就出来了 -it …bash的组合
-it …bash:上面说到在加上-it会等容器内的操作执行完毕,而bash是打开容器内的一个终端近程,又因为it的等待所以就会一直以终端连接的方式停留在容器内部,下面展示效果:
这样就进入了容器的内部 那么我们就能直接的执行相关的命令了
退出的话:
总结:
dockerexec -it CONTAINER_ID bash进入容器终端并且的保留为容器终端的输入形式.