我有一个在非交互式docker容器中运行的CI脚本。我使用的其中一个应用程序(批处理模式下的emacs)需要TTY,即使它永远不会从中读取。
在交互模式下,我可以将/dev/tty
传递给应用程序,但在非交互模式下,设备甚至不存在!
如何在非交互式泊坞窗容器中创建虚假终端?
顺便说一下,我无法控制启动脚本的CI跑步者(无人机)...因此我无法添加-i
或-t
正在运行ls -R /dev
/dev:
fd
full
fuse
kcore
mqueue
null
ptmx
pts
random
shm
stderr
stdin
stdout
tty
urandom
zero
/dev/mqueue:
/dev/pts:
ptmx
/dev/shm:
答案 0 :(得分:1)
尝试在script
(字面意思)调用中包装脚本的调用。在向另一个用户提起诉讼,然后访问一个屏幕会话时会出现类似的问题。
$ script /dev/null
$ emacs ...
$ exit