docker记录
对于docker已经启动的容器中的服务是否启动的操作
首先进入容器:
docker exec -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 就可以达到唯一的效果了! docker exec -it be bash 这样就可以
我们还要执行什么就一直要要加 exec be0ab 前缀来执行该容器下的操作 想要去掉就要加上 -it
-it : 目前的理解浅薄,就是要等在容器内的命令执行完毕才会出来到当前操作; 没有-it的加 就相当于在容器内执行一下命令,不等容器内部是否执行完毕直接出来,而我们看见的他在上面是因为容器内的执行快,(行动派可以试试在里面写个循环制造时间验证)
那么就出来了 -it ....bash 的组合
-it ....bash:上面说到在加上-it 会等容器内的操作执行完毕,而bash 是打开容器内的一个终端近程,又因为it的等待 所以就会一直以终端连接的方式停留在容器内部,下面展示效果:
这样就进入了容器的内部 那么我们就能直接的执行相关的命令了
退出的话:
总结:
docker exec -it CONTAINER_ID bash 进入容器终端并且的保留为容器终端的输入形式.
摘自