如何解决您能否澄清何时应该在“docker run”命令中使用“-it”?
如果我使用
docker run myimage /bin/bash -c "pwd"
或
docker run -it myimage /bin/bash -c "pwd"
结果是一样的。那么,“-it”是什么意思呢?我了解到“-i”用于交互式,“-t”用于 tty。但这些对我来说都是抽象名词。你能澄清一下什么时候应该在“docker run”命令中使用“-it”吗?
解决方法
当您想与容器交互时,您可以使用 -it
标志。
例如:
$ docker run -it myimage /bin/bash
这会给你一个容器内的外壳,让你保持与 bash 的连接
/ #
这将运行任何命令,但关闭连接并将您放入主机的外壳
$ docker run myimage /bin/bash -c "pwd"
/
test@host $
因此您将使用 -it
在容器内连接并执行更多命令。
最后退出容器
/ # exit
exited
,
提到 docs,
对于交互式进程(如 shell),您必须一起使用 -i -t 以便为容器进程分配一个 tty。
本质上,它的作用是添加一个终端驱动程序,它允许您作为终端会话与容器进行交互。
运行您的容器后,您可以运行 docker ps
来获取您的容器的哈希 ID,然后您可以通过运行:
docker exec -it containeridhash sh
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。