我当时在用docker做一些复杂的事情,但事实证明我不知道-it
标志的含义。最近,我遇到了一些docker run
命令示例,这使我有些困惑。
docker run -itd ubuntu:xenial /bin/bash
我的问题是-it
,如果在实例化过程中运行容器,在这里写标志有什么意义bin/bash
在文档中,我们有一个例子
docker run --name test -it debian
有解释
-it指示Docker分配一个与容器的stdin连接的伪TTY;在容器中创建一个交互式bash shell。
帮助页面中-t标志的说明和解释
-t,--tty分配伪TTY
如果我在删除-it标志
docker run -d ubuntu:xenial /bin/bash
我新创建的容器寿命不长
在 docker ps -a
它被指定为退出
抱歉,如果我的问题很愚蠢,我在Internet上找不到解释(对此我有很大的误解)。
/bin/bash
在stdin上没有可用的内容,则它没有运行的命令,也没有提示用户的方法,因此退出。这是100%正常和预期的行为。