在ubntu 18.10上的docker-compose输入设备不是TTY错误

时间:2019-06-14 15:08:38

标签: docker docker-compose

我在ubuntu 18.10服务器中安装了docker和docker compose,当我从终端执行命令docker compose时,它正在工作,但是当我配置crontab以使用docker compose删除命令时,出现此错误:“ USER变量未设置。默认为空字符串。输入设备不是TTY”

USER错误与docker-compose.yml错误有关,只是因为使用$ {USER}。

我该如何解决此问题?

PS:它在ubuntu 18.04服务器上正常工作。

1 个答案:

答案 0 :(得分:0)

  

cron守护程序的设计方式是,它不能在您的常规shell环境中执行命令。这意味着您不能像在SSH shell命令行中那样在cron中使用裸命令。这是因为PATH环境变量为/ usr / bin:/ bin,而SHELL环境变量设置为/ bin / sh。

您可以参考的内容:herehere

因此,您可能必须直接在crontab中指定shell环境变量,例如

USER=xxx
* * * * * /bin/echo ${USER}