unix docker:如果在cronjob中调用,则找不到命令

pkbketx9  于 2022-11-04  发布在  Unix
关注(0)|答案(1)|浏览(202)

在我的服务器(QNAP)上,我可以运行Docker:

$ docker -v
Docker version 20.10.11-qnap6, build 90a753c

如果我想在crontab中运行相同的docker命令

$ sudo crontab -e

* * * * * docker -v >> /root/cron.log

我得到了错误日志

/bin/bash: docker: command not found

我不明白为什么Docker不能作为crontab作业使用,但是如果我直接运行它,它就可以工作。

0tdrvxhp

0tdrvxhp1#

您应该先执行:

whereis docker

我的是:

/usr/bin/docker

然后修改crontab文件,如下所示:


* * * * * /usr/bin/docker -v >> /root/cron.log

你也可以这样修改crontab文件(在你的crontab命令之上):

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

您的案例中的完整示例:

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

* * * * * docker -v >> /root/cron.log

相关问题