the input device is not a TTY
执行命令或者脚本中有docker命令,且非终端设备直接执行,是后台操作
docker exec -it 容器id/容器名称 echo $PATH
以上命令如果在crontab 或者Jenkins 流水线里面就会报错。解决办法就是在这类环境中去掉 -it参数即可。
linux执行定时任务的时候没有终端设备,TTY一词源于Teletypes,或teletypewriters。其实出现该错误和我们的一个习惯有关,一般来说我们启动容器后要与容器进行交互操作,这是,就要加上"-it"这个参数,而在定时任务中,如果让脚本在后台运行,就没有可交互的终端,这就会引发如题所示错误,解决办法就是去掉“-it”这个参数。
https://www.leftso.com/article/2408211112263343.html