docker supervisord cron 作业不起作用

Hus*_*ein 2 cron supervisord docker

这是我的 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"]
Run Code Online (Sandbox Code Playgroud)

crontab 文件:

* * * * * echo "Hi" >> /var/log/cron.log 2>&1
#
Run Code Online (Sandbox Code Playgroud)

监督文件:

[program:cron]
command=/usr/sbin/cron -f
autostart=true
autorestart=true
stdout_logfile=/var/log/cron.log
stderr_logfile=/var/log/cron.log
Run Code Online (Sandbox Code Playgroud)

图片信息:

Distributor ID: Ubuntu
Description:    Ubuntu 16.04.3 LTS
Release:        16.04
Codename:       xenial
Run Code Online (Sandbox Code Playgroud)

主机操作系统:Windows 10

我在 Stackoverflow 上尝试了很多答案,但都没有奏效,感谢您的帮助

Hus*_*ein 6

我替换了这一行:

ADD crontab /root/
Run Code Online (Sandbox Code Playgroud)

用这一行:

RUN printf '* * * * * echo "Hi" >> /var/log/cron.log 2>&1\n#' >> /root/crontab
Run Code Online (Sandbox Code Playgroud)

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