docker里的Python脚本用CRON创build空文件

我有一个像这样的CRON工作:

0 0 * * * cd /home/path/to/script && sudo -u myuser ./thescript.sh 

这个脚本构build一个docker镜像,运行一个简单的python应用程序,将文件上的testingvalidation报告转储出来。 当我在terminal上运行这个脚本时,一切正常(生成的文件进入/ home / myuser)。 不幸的是,当我运行CRON作业时,文件被创build,但是是空的。 它必须与拥有CRON工作的Root有关,但我无法弄清楚如何完成

任何线索?

一个sudo需要一个TTY,而cron不会运行带有TTY的命令。 你需要为root用户运行cron

这可以使用

 sudo crontab -e 

然后在cron中不要使用sudo

 0 0 * * * cd /home/path/to/script && ./thescript.sh