当前位置: 首页 > 面试题库 >

对Docker -t选项分配伪TTY感到困惑

毋弘光
2023-03-14
问题内容

此选项的作用是什么?我已经阅读了很多有关TTY的文章,但仍然感到困惑。我试过没有-t和正义-i,似乎期望用户输入的程序在没有时抛出错误-t。启用伪TTY为何很重要?


问题答案:

-t选项进入Unix /
Linux中如何处理终端接入。过去,终端是硬线连接,后来是基于调制解调器的连接。它们具有物理设备驱动程序(它们是真正的设备)。通用网络一经使用,便开发了伪终端驱动程序。这是因为它创造了解什么,而不需要将它写入到你的程序直接(阅读手册页使用终端能力之间的分离sttycurses)。

因此,以此为背景,运行一个没有选项的容器,并且默认情况下,您有一个stdout流(如此html" target="_blank">docker run | <cmd>);使用运行-i,您将添加stdin流(如此<cmd> | docker run -i工作);-t通常在组合中使用,-it并添加了一个终端驱动程序,如果您要与该流程进行交互,则很可能需要此驱动程序。基本上,它使容器启动看起来像一个终端连接会话。



 类似资料:
  • 这个选项到底有什么作用?我读了很多关于TTY的书,但我还是很困惑。我在没有的情况下到处玩,只玩,而且似乎期望用户输入的程序在没有的情况下抛出错误。为什么启用伪TTY很重要?

  • 我正在尝试提出一种解决方案,它涉及在连接操作之后应用一些逻辑,从多个中的中选择一个事件。这类似于reduce函数,但它只返回1个元素,而不是递增地返回。因此最终结果将是单个(,对,而不是一个 每个键保证只到达一次。 假设像上面这样的连接操作,它用4个生成了1个,成功地连接并收集在。现在,我想做的是,立即访问这些值,并执行一些逻辑以将正确匹配到一个。例如,对于上面的数据集,我需要(,和)。 将为每个

  • 所以我一直在读Kafka的语义学,我对它的工作原理有点困惑。 我理解生产者如何避免发送重复的消息(以防代理的ack失败),但我不明白的是,在消费者处理消息但在提交偏移量之前崩溃的情况下,一次是如何工作的。Kafka不会在这种情况下重试吗?

  • 问题内容: 我正在尝试使用Paramiko连接到远程主机并执行许多文本文件替换。 其中一些命令需要作为sudo运行,从而导致: sudo:对不起,您必须有一个tty才能运行sudo 我可以使用-t开关和ssh强制进行伪tty分配。 使用paramiko可以做同样的事情吗? 问题答案: 我认为您想要对象的方法(我想提供一个URL,但是lag.net上的paramiko文档非常繁琐,只是不会为我显示文

  • 问题内容: 我已经在eclipse中创建了一个项目,并添加了Maven依赖项。在Eclipse中,它表示我正在使用JRE 1.5。一切在Eclipse中都可以正常运行,例如,我可以运行测试。 当我尝试从终端运行时,出现以下错误。 …在-source 1.3中不支持泛型(使用-source 5或更高版本来启用泛型)… 看来,Maven认为我正在使用JRE 1.3,并且无法识别泛型或for-each循

  • 问题内容: 在碰到此链接http://www.javacodegeeks.com/2013/01/java-thread-pool-example-using- executors-and-threadpoolexecutor 之后,这是我第一次为新项目使用Java线程池。 .html ,我对此更加困惑,这是页面中的代码, 在代码中,创建了一个固定大小的池并创建了10个工作线程,对吗? 线程池应该