为什么当我运行命令时
docker run ubuntu
Run Code Online (Sandbox Code Playgroud)
如果没有选项“-it”,即使使用 -a -i 选项运行命令启动,也无法与创建的容器交互
docker start -a -i CONTAINER_ID
Run Code Online (Sandbox Code Playgroud)
或者当我跑步时
docker start CONTAINER_ID
Run Code Online (Sandbox Code Playgroud)
只是容器的状态为“4 秒前退出 (0)”
但当我跑步时
docker run -it ubuntu
Run Code Online (Sandbox Code Playgroud)
我可以使用 'docker start -a -i' 来使用 ubuntu 的 bash shell
docker run当您在没有它的情况下运行时,-it它仍在运行容器,但您没有给它命令,因此它完成并退出。
如果你试试:
docker run ubuntu /bin/bash -c "echo 'hello'";
Run Code Online (Sandbox Code Playgroud)
它将运行 ubunu,然后运行命令,然后完成,因为之后没有理由让它保持活动状态。
-i是说保持它的活动状态并在终端中工作(允许它进行交互),但是如果您输入exit,则完成并且容器停止。
-t显示 docker 容器内的终端(请参阅:什么是伪终端(pty/tty)?)
-it允许您在 docker 实例中查看终端并与其交互。
此外,您可以-d在后台运行它,然后再使用它。
前任:
docker run -it -d --name mydocker ubuntu;
docker exec -it mydocker /bin/bash;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5152 次 |
| 最近记录: |