首先生成需要使用的crontab的配置文件,
注意最后一行必须为空行!必须为空行!必须为空行!
# vi crontabfile.txt 文件名自己定即可
*/1 * * * * /new_fund.php >/dev/null 2>&1
*/5 * * * * /fund.php >/dev/null 2>&1
0 */1 * * * /default.php >/dev/null 2>&1
Dockerfile中命令:
# set up crontab
COPY config/crontabfile.txt crontabfile.txt
RUN crontab crontabfile.txt
安装crontab
apt-get install cron
yum install cron
apk add cron
Crontab不执行的问题
默认容器中是每日有crontab的,如果要需要自己安装,但是,安装后也不是万事大吉,因为cron是后安装的,并不会执行,作为容器的特点来说,cron的执行最好是在entrypoint的脚本中做,这样可以保证每次容器启动的时候,脚本都会执行。
另外注意给脚本可执行的权限,最好也放在entrypoint的脚本中……
# 参考
RUN apt-get install -y cron
RUN crontab crontab-file.txt
CMD cron