码头工人监督的cron作业不起作用

时间:2018-07-12 23:48:43

标签: docker cron supervisord

这是我的Dockerfile:

ADD crontab /root/
RUN touch /var/log/cron.log
RUN crontab /root/crontab
COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf
ENTRYPOINT ["/usr/bin/supervisord"]

crontab文件:

* * * * * echo "Hi" >> /var/log/cron.log 2>&1
#

supervisord文件:

[program:cron]
command=/usr/sbin/cron -f
autostart=true
autorestart=true
stdout_logfile=/var/log/cron.log
stderr_logfile=/var/log/cron.log

图片信息:

Distributor ID: Ubuntu
Description:    Ubuntu 16.04.3 LTS
Release:        16.04
Codename:       xenial

主机操作系统: Windows 10

我尝试了很多关于Stackoverflow的答案,但是都没有成功,感谢您的帮助

1 个答案:

答案 0 :(得分:1)

我替换了这一行:

ADD crontab /root/

有这行:

RUN printf '* * * * * echo "Hi" >> /var/log/cron.log 2>&1\n#' >> /root/crontab

从Windows复制到linux env时,这是权限问题,即使我为crontab文件anw添加了0644权限,希望它对某人有帮助,我花了数小时在这件事上